Makefile中的特殊宏定义以及实用选项

Makefile中的一些特殊宏定义的名字跟shell中的位置变量挺相似的。

$?    当前目标所依赖的文件列表中比当前目标文件还要新的文件

$@   当前目标我名字

$<   当前依赖文件的名字

$*    不包括后缀名的当前依赖文件的名字

$^   规则的所有依赖文件列表,使用空格分隔。如果目标是静态库文件名,它所代表的只能是所有库成员(.o文件)名。一个文件可重复的出现在目标的依赖中,变量“$^”只记录它的一次引用情况。就是说变量“$^”会去掉重复的依赖文件。

make -C /the/directory/of/makefile 在执行指定目录中的Makefile

原文地址:https://www.cnblogs.com/mosmith/p/4948746.html