引文
库文件是计算机上的一类文件,可以理解为一种代码仓库,提供给使用者一些可以直接使用的变量、函数或类。
库文件分为两类:
- 静态库:在链接阶段,会将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中。因此对应的链接方式称为静态链接。
- 动态库:动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入。不同的应用程序如果调用相同的库,那么在内存里只需要有一份该共享库的实例,规避了空间浪费问题。
1. 静态库
1.1 静态库的制作
- 命名规则:
- Linux:libxxx.a
- lib: 前缀,固定
- xxx:库的名称,自起
- .a: 后缀,固定
- Windows:libxxx.lib
- Linux:libxxx.a
- 静态的制作
- gcc 获得 .o 文件
- 将 .o 文件打包,使用 ar(archive) 工具
命令:ar rcs libxxx.a xxx.o xxx.o
eg: arc rcs libsuanshu.a sub.o add.