makefile文件主要规定了make工具的依赖关系
makefile文件中可以定义变量varname,并且使用$(varname)进行引用,有点类似于C语言中的宏定义
make工具的自动推导过程,也就是所谓的make的“隐晦规则”,亦即,如果目标文件时name.o,那么name.c文件就会被默认推导为name.o文件的依赖文件
清空目标文件规则,每个makefile文件都会写一个清空目标文件规则的。一般的格式如下:
clean :
rm ~~~~
这个有个概念,也就是所谓的伪目标文件。 clean就是个伪目标文件,默认的make不可以执行它,一般要这样执行,make clean。
上面说clean是个伪目标文件,好像有点欠妥,更为稳健的清除目标文件的做法是:
.PHONY : clean
clean :
-rm ~~~
至于为什么要在rm前面加上-,主要是为了强壮性,也许某些文件出了问题,不要管。继续做后面的事情。
makefile文件只支持单行注释,以#开始;
makefile中的命令,必须以tab键开头;
推荐的makefile文件名: Makefile;如果你要指定一些很诡异的makefile文件名(其中不包含makefile、GNUmakefile,这两个名字make可以识别),你需要使用make的-f选项 指定文件名;
引用其他的makefile文件,include指令,注意include指令不可以tab键开始,切忌。include后面,可以使用路径,通配符等等。
wildcard关键字的使用;