linux 动态库
来源:互联网 发布:gxh-305分析仪的数据 编辑:程序博客网 时间:2024/06/05 18:14
动态库查找路径设置方法:
方法一:在配置文件 /etc/ld.so.conf 中指定动态库搜索路径。每次编辑完该文件后,都必须运行命令 ldconfig 使修改后的配置生效。
方法二:通过环境变量 LD_LIBRARY_PATH 指定动态库搜索路径。当通过该环境变量指定多个动态库搜索路径时,路径之间用冒号":"分隔。
方法三:在编译目标代码时指定该程序的动态库搜索路径。这是通过gcc 的参数"-Wl,-rpath,"指定。当指定多个动态库搜索路径时,路径之间用冒号":"分隔。
gcc -Wl,option
Pass option as an option to the linker. If option contains commas, it is split into multiple options at the commas.
动态库查找顺序:
1.编译目标代码时指定的动态库搜索路径;
2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;
3.配置文件/etc/ld.so.conf中指定的动态库搜索路径;
4.默认的动态库搜索路径/lib;
5.默认的动态库搜索路径/usr/lib。
查看动态库或者可执行程序依赖的库文件命令:ldd
动态库查找细节:
1)执行这个查找动作的linux程序:
2)这个程序参考的文件为:/etc/ld.so.conf,该文件保存着ld应该搜索的so文件路径。通常ld.so.conf.d这个文件夹下也保存着分文件,以供合成ld.so.conf
3)该程序实际参考的文件为:/etc/ld.so.cache. 这个文件其实基本上就是对/etc/ld.so.conf做了稍微的处理以利于/usr/bin/ld程序的参考。
4)将/etc/ld.so.conf 更新到/etc/ld.so.cache.的命令: ldconfig. 使用 ldconfig -p|less可以逐步查看从/usr/bin/ld 眼里的/etc/ld.so.cache的内容(路径)。
5)所以往/etc/ld.so.conf内做指定的路径,如/usr/lib等加入你需要程序搜索的动态库.so文件,不需要执行ldconfig更新。因为/etc/ld.so.cache中保存的就是目录,而不是具体的so文件。
6)向/etc/ld.so.conf添加路径。则需要调用ldconfig来更新/usr/bin/ld的搜索路径。
原帖:
http://blog.globstudio.com/373.html
http://yaronspace.cn/blog/archives/832
http://www.kuqin.com/linux/20080424/7471.html
http://blog.sina.com.cn/s/blog_93b45b0f01011of1.html
http://www.cnblogs.com/cute/archive/2011/02/24/1963957.html
- linux 动态加载动态库
- linux 动态加载动态库
- linux 动态加载动态库
- Linux 动态库剖析
- Linux 动态库剖析
- Linux 动态库剖析
- Linux 动态库剖析
- linux lib 动态库
- linux 调试动态库
- Linux 动态库剖析
- Linux 动态库剖析
- linux 动态链接库
- Linux 动态库剖析
- Linux动态库
- Linux如何查找动态库
- Linux 动态库剖析
- linux动态库介绍
- Linux 动态库剖析
- cocos2d-x 拖动效果 成功代码及截图
- drupal theme概述
- SamsungS3C2440平台上的VxworksBSP移植
- sched_setscheduler用法
- 一个域(协议+域名+端口)的资源:页面+页面标签加载的资源
- linux 动态库
- 地址翻译概述
- EFPower tool 使用时发生的异常
- 检测80端口是否启用
- VBA Excel 2007 画饼图
- C#反转字符串
- python中线程的使用
- 谈谈proxy的安全问题
- C程序设计课程 第十三堂课后作业