makefile编写(二)

改进:当一个文件修改时候,不需要重新编译所有的文件,只需要编译需改的文件

改进如下:

app  :  main.o  add.o  sub.o  mul.o

(tab)      gcc  main.o   add.o   sub.o  mul.o  -o  app

main.o :  main.c

(tab)  gcc  main.c -c

add.o :  add.c

(tab)  gcc  add.c -c

sub.o :  sub.c

(tab)  gcc  sub.c -c

mul.o :  mul.c

(tab)  gcc  mul.c -c

这样修改之后,其中一个文件修改后,只需要编译相应的修改文件。

这取决于makefile的工作原理:

1.检查文件依赖是否存在,不存在则向下搜索下边的规则,如果有规则是生成这条依赖的,则执行相对应的命令。2. 如果文件依赖存在,那么比较目标和依赖的时间先后,如果目标比依赖早,那么重新生成这个目标。

缺点:冗余

你可能感兴趣的:(makefile编写(二))