Ubuntu中是否可以使用LD_LIBRARY_PATH指定系统库的位置

Ubuntu中是否可以使用LD_LIBRARY_PATH指定系统库的位置

我有一个在 Ubuntu 14.04 中开发和运行的 32 位应用程序。我尝试在 Ubuntu12.04 中运行该应用程序,显然由于依赖性问题而失败。我的问题是,是否可以让应用程序寻找图书馆在某个自定义位置,而不是/usr/lib或类似地,比如说,我libstdc++从 14.04 复制,编写了一个脚本作为应用程序的一部分,告诉LD_LIBRARY_PATH使用此位置。是否可以?

答案1

对的,这是可能的。这就是LD_LIBRARY_PATH他的目的...

如果您有库/opt/mylibs,则可以通过指向LD_LIBRARY_PATH那里来使用它们来启动应用程序。通常在您的情况下,您会在脚本中执行此操作:

#!/bin/sh

LD_LIBRARY_PATH=/opt/mylibs /opt/myapp/app

这将/opt/myapp/app使用来自/opt/mylibs.

相关内容