标签:
一般来说,Makefile只应该有一个最终目标,这个目标被放在第一条规则中。
1 targets:prerequisites 2 command #注意command必须以[TAB]开头
Makefile就是通过command作用于prerequisites,然后生成最新的targets。
其中:
1、targets一般是一个文件,多个文件用空格隔开
2、command如果太长可以用‘\‘续行,可以使用Shell所支持的任何命令
3、整个规则中,若想使用特殊符号作普通符号,也使用‘\‘转义
当有多个文件分别位于不同文件夹时,可以用过特殊变量"VPATH"指定搜寻路径。以告知Makefile在当前目录找不到依赖文件时,去指定路径寻找。
VPATH = ../test : ../Make #路径由‘:‘分隔
为了能够使搜索更加灵活,需要使用关键字"vpath"
vpath pattern directories #满足pattern模式的文件指定directories目录,目录同样可以用冒号分隔 vpath pattern #清除满足pattern模式的文件搜索目录 vpath #清除所有已经设置好了的文件搜索目录 #例如 vpath %.c ../src #指定在当前目录没有找到.c文件,在../src目录中寻找
一般在Makefile最后会有一个clean目标来清除make过程的文件,为了避免clean目标与项目重名使用伪目标来显示说明。
.PHONY clean clean: rm *.c
标签:
原文地址:http://www.cnblogs.com/KcMeterCEC/p/5380619.html