.o,是目标文件,相当于windows中的.obj文件
.so 为共享库,是shared object,用于动态连接的,和dll差不多
.a为静态库,是好多个.o合在一起,用于静态连接
.la为libtool自动生成的一些共享库,vi编辑查看,主要记录了一些配置信息
.d为源文件的依赖关系的完整规则:
如:你改了your.h文件里的结构定义说着宏定义,.c.o 规则是不会让make重新编译your.c的,即使your.c里有
#include "your.h"
如果有.d文件, make 就知道由于your.c #include 了 "your.h", 需要编译your.c