我目前正在使用MonoDevelop(v7.5)在Ubuntu(18.04)上运行。
基本上,我目前遇到此错误
System.DllNotFoundException:libcsfml-graphics.so at at(wrapper 托管到当地)......
我已逐步尝试this解决方案,但仍然无济于事。
/etc/mono/config
)<configuration>
<!--Some other DLL maps-->
<dllmap dll="csfml-graphics-2" target="libcsfml-graphics.so" os="!windows"/>
<dllmap dll="csfml-audio-2" target="libcsfml-audio.so" os="!windows"/>
<dllmap dll="csfml-system-2" target="libcsfml-system.so" os="!windows"/>
<dllmap dll="csfml-window-2" target="libcsfml-window.so" os="!windows"/>
<dllmap dll="csfml-graphics-2.dll" target="libcsfml-graphics.so" os="!windows"/>
<dllmap dll="csfml-audio-2.dll" target="libcsfml-audio.so" os="!windows"/>
<dllmap dll="csfml-system-2.dll" target="libcsfml-system.so" os="!windows"/>
<dllmap dll="csfml-window-2.dll" target="libcsfml-window.so" os="!windows"/>
</configuration>
ldconfig -p |grep libcsfml
... libcsfml-window.so.2.3 (libc6,x86-64) => /lib/CSFML/libcsfml-window.so.2.3
libcsfml-window.so (libc6,x86-64) => /lib/CSFML/libcsfml-window.so
libcsfml-system.so.2.3 (libc6,x86-64) => /lib/CSFML/libcsfml-system.so.2.3
libcsfml-system.so (libc6,x86-64) => /lib/CSFML/libcsfml-system.so
libcsfml-network.so.2.3 (libc6,x86-64) => /lib/CSFML/libcsfml-network.so.2.3
libcsfml-network.so (libc6,x86-64) => /lib/CSFML/libcsfml-network.so
libcsfml-graphics.so.2.3 (libc6,x86-64) => /lib/CSFML/libcsfml-graphics.so.2.3
libcsfml-graphics.so (libc6,x86-64) => /lib/CSFML/libcsfml-graphics.so
libcsfml-audio.so.2.3 (libc6,x86-64) => /lib/CSFML/libcsfml-audio.so.2.3
libcsfml-audio.so (libc6,x86-64) => /lib/CSFML/libcsfml-audio.so
注意:以.so
结尾的文件是指向相应.so.2.3
文件的syslinks。
运行MONO_LOG_LEVEL=debug mono GameProject.exe
后,我发现该程序确实搜索了libcsfml-graphics.so
文件,但即使我运行了lib/CSFML/
,它仍然不会尝试在sudo ldconfig
文件夹下搜索缓存它。
(如果有人可以就如何使用该命令过滤不必要的信息给我评论,我将编辑我的帖子并放置MONO_LOG_LEVEL=debug mono GameProject.exe
的日志。)
但是,我确实注意到它试图在/usr/lib/libcsfml-graphics.so
中搜索相应的库,所以我尝试将我的库放在指定的目录中,但它仍然无法工作并返回相同的错误。< / p>
PS:另外,在你将这个帖子作为副本关闭之前,我已经检查了其他类似的线程,但这些线程根本没有为我提供帮助。