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