如何设置LD_LIBRARY_PATH以便在别人之前检查某个文件夹

时间:2014-07-16 21:13:50

标签: ubuntu makefile

对于我的应用程序,我使用了特殊版本的库,它被复制到/ opt / lib文件夹中。 当我运行我的应用程序,如果从终端,我做:

export LD_LIBRARY_PATH=/opt/lib首先, 然后

我的应用运行良好。 否则,它将使用来自/ usr / lib

的错误库

如何将/ opt / lib添加到系统中,然后它会在/ usr / lib之前检查我的路径? 感谢。

LJ

3 个答案:

答案 0 :(得分:0)

$ PATH的搜索方式是$ PATH开头列出的目录优先于后来的目录。所以请确保您的订单正确。

答案 1 :(得分:0)

/opt/lib添加到/etc/ld.so.conf文件(或/etc/ld.so.conf.d/目录中的文件),然后运行ldconfig(以root用户身份)将配置系统链接器以包含搜索中的路径。我相信那里的任何内容都会出现在/lib/usr/lib的默认路径之前(至少根据我正在查看的手册页)。在/etc/ld.so.conf.d文件中指定的位置之间进行排序是一个不同的问题,但可能只是依赖于文件读取顺序。

答案 2 :(得分:0)

感谢您的回复。 我刚刚发现了如何根据我的情况这样做:

在主目录中的.bashrc文件中添加两行:

  LD_LIBRARY_PATH=/opt/lib
  export LD_LIBRARY_PATH

然后重新启动一个新的终端,运行ldd我的app,该库链接到/ opt / lib。

希望这很有用。 谢谢 LJ