一、静态库
1.1、静态库的特点
在linux下,静态库以“.a”作为后缀名,如lib.a;静态库在编译时会被链接到目标文件中,因此使用静态库编译产生的可执行文件较大。优点是加载速度快,隔离性好。
1.2、makefile制作静态库的方法
ar rcs lib_bcm2835.a $(CUR_OBJS)
$(CUR_OBJS)表示生成的.o文件
选项:
[r] 替换现有文件或将新文件插入存档[c] 创建一个库。不管库是否存在,都将创建。[s] 创建目标文件索引,这在创建较大的库时能加快时间。 1.3、如何在应用程序中加载静态库
二、动态库
在linux下,动态库以“.so”作为后缀名,如lib.so;动态库在编译时不会链接到目标文件中,因此使用静态库产生的可执行文件较小。动态库在程序运行时才会被载入,静态库会被链接到可执行文件中,属于程序的一部分;