文章目录
- 1 工作流程
- 2 静态库和动态库连接
- 2.1 静态连接
- 2.2 动态链接
 
- 3 静态库制作和使用
- 4 动态库的制作和使用
- 5 GDB 调试器
- 6 Makefile
1 工作流程

 
 第一步预处理,生成.i
 第二部生成汇编文件.s
 第三部生成目标代码.o
 第四部生成可执行文件
2 静态库和动态库连接
2.1 静态连接
静态连接:由链接器在链接时将库的内容加入到可执行程序中
 优点:对运行环境依赖性较小,具有较好的兼容性。
 缺点:生成程序比较大,需要更多的系统资源,在装入内存时会消耗更多的时间。
 库函数需要更新,必须重新编译。
2.2 动态链接
动态链接:链接器在链接时仅仅建立所需库函数的之间的链接关系,在程序运行的时候才将所需资源调入。
 优点:在需要的时候才会调入
 简化程序的升级,有较小的程序体积
 实现进程之间的资源共享
 缺点:
 依赖动态库,不能独立运行
 动态库依赖版本问题严重
3 静态库制作和使用
add.h
 
add.c
 
 sub.h
 
 
 创建test.c
 
 
 
程序没有问题
 制作静态库
 
 
 打包
 
 打包
 
 链接库
 
 
4 动态库的制作和使用

 
 

 
 
 
5 GDB 调试器

 这样编译有调试信息
 
 
 
 
 
 
 

n
6 Makefile



