在linux上运行时解析依赖关系时,/usr/lib目录是否优先于LD_LIBRARY_PATH变量

在linux上运行时解析依赖关系时,/usr/lib目录是否优先于LD_LIBRARY_PATH变量,linux,shared-libraries,elf,Linux,Shared Libraries,Elf,运行时,其中一个elf文件加载/usr/lib/libstdc++.so.6,即使LD_LIBRARY_路径指向具有较新lib文件的目录并引发以下错误 ./qt-linux-opensource-5.0.2-x86_64-offline.run: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found /usr/lib的优先级是否高于LD\u LIBRARY\u路径?请指向手册页或记录此信息的其他文档。请参阅man-ld.s

运行时,其中一个elf文件加载/usr/lib/libstdc++.so.6,即使LD_LIBRARY_路径指向具有较新lib文件的目录并引发以下错误

./qt-linux-opensource-5.0.2-x86_64-offline.run: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found 

/usr/lib的优先级是否高于LD\u LIBRARY\u路径?请指向手册页或记录此信息的其他文档。

请参阅
man-ld.so

如果库依赖项不包含斜杠,则按以下顺序搜索:

o(仅限ELF)使用DT_RPATH动态目录中指定的目录 二进制文件的section属性(如果存在)和DT_运行路径属性 不存在。不推荐使用DT_RPATH

o使用环境变量LD_LIBRARY_PATH。除非 可执行文件是一个集合用户ID/集合组ID二进制文件,在这种情况下是 忽略

另外,
LD_PRELOAD
可能会改变一些事情,尽管这在您的情况下不太可能

您可能会发现
LD_DEBUG
变量很有用,只需像
LD_DEBUG=libs myprog
那样运行您的程序即可(有关帮助和更多选项,请参阅同一手册页)