(7)Makefile进阶
【赋值符号】
此程序运行结果位 toname:weason
=赋值符的意义为,输出最后一次赋值的结果
输出结果为 toname:wyc
:=赋值符的意义为,输出第一次赋值的结果。
?=的意义为,若之前赋值过,则按照之前的赋值结果;若之前没有赋值,则按照此结果赋值。
这个很有用。
【自动化符号】
用的较多的有两个:
【$@】:表示替代对应的目标函数
【$^】:表示替代对应的依赖函数
如,上图等价为
这样写可能有语法错误,但是方便理解 是这个意思。
最后规范化的Makefile是这个样子
前8行都是在定义一些变量,用到了最开始提到的赋值符号
后面就是一些linux之中一些相关的编译命令。
使用时直接修改NAME变量即可