makefile复习时发现的编写makefile规则注意事项
博客中关于makefile的博文数不胜数,比较经典的都很相似,下面这一片,很全面,只是很长,可以作为参考资料:http://blog.csdn.net/liang13664759/article/details/1771246。
①makefile格式,即规则。
②makefile工作原理,即栈式编译和更新。注意cc时,当前行最前边必须是tab。
③makefiel变量的使用。
④makefile隐晦规则。即自动推导功能。
⑤makefile清空目标文件的规则.
⑥makefile文件指示.即像c语言那样可以include 其他makefile文件。注意:在include前面可以有一些空字符,但是绝不能是[Tab]键开始。include和<filename>可以用一个或多个空格隔开。
⑦文件搜寻。VPATH:主要用于当makefile文件没有和.o文件在一个目录时,制定.o所在目录。常常发上在多模块软件系统中。
⑧Makefile有三个非常有用的变量。分别是$@,$^,$<代表的意义分别是:$@--目标文件,$^--所有的依赖文件,$<--第一个依赖文件。
⑨后缀规则:
后缀规则已经被格式规则代替,分为单后缀和双后缀规则。
双后缀规则: 等同于格式规则:
.c.o: %.o: %.c
…… ……
单后缀规则: 等同于格式规则:
.c %: %.c
…… ……
后缀规则不能有任何属于它们自己的依赖,而格式规则可以有依赖文件。例如:
%.o:%.c hello.h