LD_LIBRARY_PATH指定运行时动态库搜索路径,适合临时解决库路径问题,但不推荐生产环境使用。
核心定义
动态链接器查找共享库(.so 文件)的目录列表,优先级高于系统缓存和默认目录。
使用方法
临时设置:
| |
单次运行:
| |
适用场景
- 使用非标准路径的库
- 测试新版本库
- 无 root 权限安装
搜索优先级
DT_RPATH(编译时写入)LD_LIBRARY_PATHDT_RUNPATH/etc/ld.so.cache- 默认目录(
/lib、/usr/lib)
风险
- 可能导致版本冲突
- 安全风险(恶意库劫持)
- 不利于维护
替代方案
使用 ldconfig:
| |
编译时设置 RPATH:
| |
包装脚本:
| |
张芷铭的个人博客
Comments