一、概念

Linux应用开发 | 静态库
linux系统中函数库在 /lib 、/usr/lib下面
Linux应用开发 | 静态库

二、测试

test.c
Linux应用开发 | 静态库
test.h
Linux应用开发 | 静态库

三、制作静态库

3.1 将c文件转换到汇编.o文件

Linux应用开发 | 静态库

3.2 执行ar -cr libxxx.a *.o

Linux应用开发 | 静态库
Linux应用开发 | 静态库
libtest.a就是制作的静态库
Linux应用开发 | 静态库
-t就是查看这个静态库所包含的.o文件

四、使用静态库

4.1编写main.c

包含test.h接口文件 (头文件)
Linux应用开发 | 静态库

4.2 编译

Linux应用开发 | 静态库
-L表示库的路径 点表示当前路径
-l表示使用的库名称 注意: 不能写成libtest.a
Linux应用开发 | 静态库

4.3 运行

Linux应用开发 | 静态库
可以正常运行
如果把libtest.a删掉 还是可以正常运行的 说明这个程序的运行不依赖于库文件 编译的时候已经把库编译进去了
静态库优点: 可移植性强 不依赖库文件
缺点:如果修改了库文件 必须要重新编译程序

相关文章: