:=在makefile中什么意思?

2025-02-26 22:02:49
推荐回答(1个)
回答1:

在网上搜索GNUmake中文手册,作者徐海兵翻译的非常好
不过要想真的上手,还是要自己动手写起来,哪怕就几个文件的小工程
:= 是用来定义变量的,立即展开的变量。makefile中的变量类似c中的宏,完全文本替换,
不过=定义的变量,如果定义中有其他变量引用,是不会在定义位置完全展开的,而是在make生成依赖关系或者执行命令的时候才彻底展开,所以有时候使用不当会出现意想之外的错误。
:=则是在定义处就明确展开,每一步都会非常清晰。大概就是这样,如果想彻底搞定makefile,看手册,自己写。