加载 SMFL 共享库时出错
Error loading SMFL shared library
所以,我在 Linux(OpenSUSE) 中使用 C++ 和 SFML 编写了一个程序。
我试图将编译后的程序发送给我的一个朋友(也在 Linux 上),但它说它缺少 DLL。所以我包含了我使用的所有“.so”(音频、图形、window 和系统),但是当他尝试 运行 它时,它一直给出错误:
error while loading shared libraries: libsfml-audio.so.2.4: cannot open shared object file: No such file or directory
所以我去查了下,肯定包含了"libsfml-audio.so.2.4"这个文件
我真的不想让他安装 SFML 只是为了 运行 它。
在此先感谢您的帮助。
Linux 在加载共享库时有点挑剔。
最简单的解决方案是确实捆绑您的共享库并告诉程序从那里实际加载它们。
假设共享库位于您的可执行文件旁边,您将像这样启动它:
LD_LIBRARY_PATH=. ./yourExecutableName
所以,我在 Linux(OpenSUSE) 中使用 C++ 和 SFML 编写了一个程序。
我试图将编译后的程序发送给我的一个朋友(也在 Linux 上),但它说它缺少 DLL。所以我包含了我使用的所有“.so”(音频、图形、window 和系统),但是当他尝试 运行 它时,它一直给出错误:
error while loading shared libraries: libsfml-audio.so.2.4: cannot open shared object file: No such file or directory
所以我去查了下,肯定包含了"libsfml-audio.so.2.4"这个文件
我真的不想让他安装 SFML 只是为了 运行 它。
在此先感谢您的帮助。
Linux 在加载共享库时有点挑剔。
最简单的解决方案是确实捆绑您的共享库并告诉程序从那里实际加载它们。
假设共享库位于您的可执行文件旁边,您将像这样启动它:
LD_LIBRARY_PATH=. ./yourExecutableName