3.13 链接静态库
1 制作静态库
ar rcs libtest.a x.o xx.o
2 链接静态库
gcc main.c -I ./include -L ./lib -ltest
3 链接静态库带来的问题
如果只调用一个函数,将链接整个静态库,可执行体积大大增加!
解决之道:
每个函数的实现都使用一个源文件,生成对应目标文件
4 静态链接的缺点
- 生成的可执行文件体积较大,包含相同的公共代码,浪费存储空间、运行时占用的内存较大
- 程序运行时要一次性全部加载到内存
- 对于内存配置较小的系统,可能装载不下,无法运行