Linux 共享库管理:ld.so.conf 与 LD_LIBRARY_PATH
来源:互联网 发布:ios程序员培训 编辑:程序博客网 时间:2024/05/22 08:08
Linux 运行的时候,是如何管理共享库(*.so)的?
在 Linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。
但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢?目前,Linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldconfig 生成 /etc/ld.so.cache。 ld.so 加载共享库的时候,会从 ld.so.cache 查找。
传统上,Linux 的先辈 Unix 还有一个环境变量:LD_LIBRARY_PATH 来处理非标准路经的共享库。ld.so 加载共享库的时候,也会查找这个变量所设置的路经。LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./lib
export LD_LIBRARY_PATH但是,有不少声音主张要避免使用 LD_LIBRARY_PATH 变量,尤其是作为全局变量。
解决这一问题的另一方法是在编译的时候通过 -R 选项指定 run-time path。
- Linux 共享库管理:ld.so.conf 与 LD_LIBRARY_PATH
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- Linux 共享库:LD_LIBRARY_PATH 与ld.so.conf
- LINUX共享库:LD_LIBRARY_PATH和ld.conf
- Ext.Net License 问题
- 关于CVS和Checkstyle的使用(给组里的新同学)(一)
- sql中的常见函数
- 关于Segmentation fault(段错误)探究
- goldengate 故障及解决方法汇总
- Linux 共享库管理:ld.so.conf 与 LD_LIBRARY_PATH
- nginx+squid+apache web架构
- matlab添加libsvm
- 140个Google面试问题
- Hadoop0.21.0源码流程分析(3)-Task节点管理启动任务
- 解决Citrix Reciver for Linux 错误:you have not chosen trust ... SSL error 61
- 存储控制器
- JavaScript 函数
- linux设备模型之led子系统