从一个主机到另一个主机的共享库路径不一致

问题描述:

我构建了我的qt应用程序,以便它使用的所有Qt模块都与可执行文件包含在同一个目录中。它在我用来构建应用程序的机器上工作,我确保通过除去应用程序的当前目录中除了那些共享库之外的地方来测试它。做一个ldd表明它在当前目录中查找这些库并将自己的可执行文件本身打开时无法打开exectuable。所以这一切都很好,但是当我将这个目录传输到主机时,它仍然无法找到这些库。可能是什么问题呢?从一个主机到另一个主机的共享库路径不一致

是“。”在第二台机器上的LD_LIBRARY_PATH中?
你对库文件有正确的权限吗?

+0

这样做的技巧谢谢:D – 2010-03-23 18:44:10

+0

有没有一种方法让我自动设置此路径而无需用户干预,例如,无论用户何时从桌面启动程序或内置命令,都会修改LD_LIBRARY_PATH。我希望用户能够安装该程序,方法是简单地将目录复制到任何他想要的地方,而不用修改他的登录脚本和其他东西。 – 2010-03-23 18:47:31

+1

在Unix上没有做太多的应用程序部署,你需要确保“。”至少在执行路径上。可能需要考虑制作一个合适的RPM/DEB来将.so放在系统中,而不是让用户编辑路径。 – 2010-03-23 19:06:39