我对 Linux 和 Ubuntu 还很陌生,我已经将我的简单游戏引擎移植到 Linux。该引擎位于 .so 文件中,并链接到可执行文件。
我无法运行我的可执行文件,因为它说找不到 Engine.so 文件(在终端中运行时)。
因此,如果我在 Ubuntu 上进行开发,如何才能让可执行文件找到该库?
第二个问题是,分发应用程序时如何安装 .so 文件?我认为它们不只是放在与 Windows 中的 exe 相同的目录中?那么它们是如何安装的?
答案1
可执行文件在一系列位置搜索库,例如,,,/lib
...因此,如果您不将文件放在这些位置之一(可能是个好地方),则可执行文件将无法运行。/usr/lib
/usr/local/lib
.so
/usr/local/lib
LD_LIBRARY_PATH
您可以通过设置包含您喜欢的任何目录(例如包括您的开发目录)的环境变量明确指定要搜索的一组目录。