linux动态库查找,Linux查找动态库的3种方法

2023-05-16

Linux查找动态库的3种方法

linux默认加载动态库的路径是 /lib或者是/lib64, 32位的系统是前者,64位是后者。

如果找不到还有3个地方

LD_LIBRARY_PATH

rpath

ldconfig

通过设置LD_LIBRARY_PATH环境变量方式,让系统在这个环境变量设置的路径查找动态库。

$> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:XXXXXX

rpath是ELF文件头(可执行文件的统称)的一部分,通过设置这个变量直接指定动态库的绝对路径。可使用readelf命令查看ELF文件的rpath

$> readelf -d xxx

要设置rpath,可以使用cmake,cmake默认生成的可执行文件是带有rpath的。

ldconfig是通过设置 读取 /etc/ld.so.conf, 然后创建临时缓冲文件 /etc/ld.so.cache~

因此可以将动态库所在的路径加载到 /etc/ld.so.conf文件,然后 运行ldconfig命令

$> sudo ldconfig

也可以使用ldconfig查看缓冲的动态库

$> sudo ldconfig -p

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章转载自:IT夜班车,否则按侵权处理.

分享到:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux动态库查找,Linux查找动态库的3种方法 的相关文章

随机推荐