Linux 静态库与共享库
来源:互联网 发布:c语言判断数字大小 编辑:程序博客网 时间:2024/06/10 19:56
库文件中存放的是预先编译好的一组函数。 程序在应用这些函数时不需要编译,直接引用函数所在库文件。
库文件分为静态库与共享库。
静态库:
1. 使用
gcc -o hello hello.c /usr/lib/libh.a
2. 创建
将函数hehe() heihei() 制作成共享库。
首先 , 编译两个函数所在文件生成 .o 文件 gcc -c hehe.c gcc -c heihei.c
生成 hehe.o heihei.o
其次, 创建库文件libh.a ,并将目标文件添加进去
ar crv libh.a hehe.o heihei.o
最后, 为函数库生产内容表(某些系统不需要此步骤)
ranlib libh.a
可以使用了 gcc -o hello hello.c /usr/lib/libh.a
共享库:
静态库的缺点是当同时运行的程序都是用来自同一函数库的函数时, 内存中会为同一个函数创建多个副本, 而且在程序文件中也会有多份副本。这将消耗大量资源。
当使用共享库时, 连接方式是: 程序本身不再包含函数代码,而是在引用运行时可访问的共享代码。 当编译好的程序在内存中执行时, 函数引用被解析并产生对共享库的调用,如果有必要,共享库才被加载到内存中。
共享库后缀名 .so.N N 代表版本号 例如 aaa.so.7 版本号为7
- Linux 静态库与共享库
- Linux 静态库与共享库
- Linux 静态库与共享库
- Linux 静态库与共享库
- linux 静态库与共享库
- linux静态库与共享库
- linux静态库与共享库
- LINUX 静态库,共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux 静态库、共享库
- linux静态共享库实验
- 静态库与共享库
- 静态库与共享库
- UART协议
- [T9译言]--<敏捷转型>之Chapter 1了解敏捷
- 排序算法之插入排序
- C++: Accessing the virtual table directly(盗版)
- 什么是 ant----编译打包工具 ant
- Linux 静态库与共享库
- gdal的矢量栅格化接口GDALRasterizeLayers使用(一)
- POJ 3468 A Simple Problem with Integers (线段树—成段覆盖)
- C++的I/O(vc版)(六)
- Myeclipse 导入 tomcat 源码
- oracle vpd 虚拟专用数据库
- Boost下载安装编译配置使用指南(含Windows、Linux以及ARM Linux)
- Linux2.6 内核进程调度分析
- windows下 直接点击startup.bat 启动tomcat服务