linux-静态库和动态库
来源:互联网 发布:python发送http请求 编辑:程序博客网 时间:2024/05/29 19:07
1. 生成方式
静态库:
首先将源文件编译成目标文件:gcc –c test.c -o test.o
然后生成静态库:ar –rc libstatic.a test.o
共享库:
首先将源文件编译成目标文件:gcc –c test.c -o test.o
生成共享库:gcc –fPIC –shared –o libshared.so test.o
静态库的链接方法:
gcc –o software_name -L. –lstatic main.c (默认库在当前文件夹)
共享库的链接方法:
gcc –o software_name -L. –lshared main.c(默认库在当前文件夹)
2. 存在周期
静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。
动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。
3.加载时间
二者的不同点在于代码被载入的时刻不同。
静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。
共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。
4.如何使用
静态库直接编译到程序里面;
动态库可以通过设置环境变量来告知其地址使用:
export LD_LIBRARY_PATH='/home/lib'
注意:若静态库和动态库同名, gcc命令将优先使用动态库。
0 0
- linux库:静态库和动态库
- Linux动态库和静态库比较
- Linux创建静态库和动态库
- Linux中的静态库和动态库
- linux 下静态库和动态库
- linux中的动态库和静态库
- [Linux]链接,静态库和动态库
- LINUX 静态库和动态库
- linux静态库和动态库分析
- Linux静态库和动态库
- linux静态库和动态库
- linux生成动态库和静态库
- Linux静态库和动态库
- linux 动态库和静态库
- linux静态库和动态库分析
- Linux静态库和动态库
- linux中的动态库和静态库
- linux静态库和动态库分析
- SQL之五
- CentOS 6.4设置静态IP不生效解决方法
- 光距感 stk3310 调试
- 用css定义组件-下拉框
- 23种设计模式(15):备忘录模式
- linux-静态库和动态库
- 跬步系列 - 距离
- 解决自定义View 设置 layout_width,layout_height为wrap_content时还是充满父类
- 理解操作系统原理——Linux操作系统的真实面目
- 第31课 Python列表的基本操作使用与常用函数
- Unity3d通过鼠标缩放查看和旋转物体
- Husky数据分析——全球航班信息的研究
- Hawq学习笔记 --- 利用pg_dump下来的数据,Load进Postgres
- NGUI的事件通知架构和源码剖析