命名:makefile / Makefile
工作原理(为了不在每次编译的时候要把所有文件都重新编译一次,可以先将文件生成为.o文件):
- 若想生成目标,检查规则中的依赖条件是否存在,如不存在,则寻找是否有规则用来生成该依赖文件(依赖条件如果不存在,找寻新的规则去产生依赖)
- 检查规则中的目标是否需要更新,必须先检查它的所有依赖,依赖中有任一个被更新,则目标必须更新(目标的时间必须晚于依赖条件的时间,否则更新目录)
1. 一个规则
目标:依赖
(一个tab缩进)命令
如:add.o:add.c
(一个tab缩进) gcc -Wall -g -c add.c -o add.o
目标:最终要生成的目标文件(伪目标除外)
依赖:目标文件由哪些文件生成
命令:通过执行该命令由依赖文件生成目标
默认终极目标是第一条规则的目标
ALL:a.out #ALL-->指定终极目标
Makefile中的其它规则一般都是为第一条规则服务的
2. 两个函数
src = $(wildcard ./*.c)
找到当前目录下所有后缀为.c的文件。将文件名组成列