Makefile文件包含的规则:
1.两个部分组成,分别是依赖的关系和执行的命令:
targets : prerequisites
command
targets : prerequisites; command
command
argets:规则的目标,可以是 Object File(一般称它为中间文件),也可以是可执行文件,还可以是一个标签;
prerequisites:是我们的依赖文件,要生成 targets 需要的文件或者是目标。可以是多个,也可以是没有;
command:make 需要执行的命令(任意的 shell 命令)。可以有多条命令,每一条命令占一行。
我们的目标和依赖文件之间要使用冒号分隔开,命令的开始一定要使用Tab键。
Makefile的工作流程:
1.中间文件的作用:编译时生成的 “.o” 文件。作用是检查某个源文件是不是进行过修改,最终目标文件是不是需要重建。我们执行 make 命令时,只有修改过的源文件或者是不存在的目标文件会进行重建,而那些没有改变的文件不用重新编译
2.清除工作目录中的过程文件:
.PHONYY:clean
clean:
rm -rf *.o test
其中 “*.o” 是执行过程中产生的中间文件,“test” 是最终生成的执行文件
在shell 中执行 “make clean” 命令,编译时的中间文件和生成的最终目标文件都会被清除,方便我们下次的使用
Makefile通配符的使用:
shell支持的通配符同样适合
*匹配0个或者任意个字符
?匹配任意一个字符
[] 指定匹配的字符放在[]中
Makefile变量的定义和使用
- $ (VALUE_LIST)" 或者是 “${VALUE_LIST}” 来替换,这就是变量的引用