=Makefile========》常见问题

Makefile中赋值

?=  若变量未定义,则定义

+=   在变量后面追加

:= 和 = 均为赋值符号,其区别可通过下面的例子看出:

$vim makefile

a=1

b=2

c=$(a)+$(b)

c:

  @echo $(c)

a=56

$make -f makefile c

56+2

再看另一个例子:

$vim makefile2

a:=1

b:=2

c:=$(a)+$(b)

c:

  @echo $(c)

a:=12

$make -f makefile2 c

1+2

看完这两个例子基本上就明白了吧~

=赋值,输出的结果跟最后的变量赋值相关

 :=只跟该变量之前的赋值语句有关,后面变量的变化不会影响

make编译指定的makefile文件的格式:

make -f makefile_name args或

make --file makefile_name args

>
作者:豌豆果果
出处:https://www.cnblogs.com/hylogs/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
觉得有所帮助,可以请果果喝咖啡哟^_^!

原文地址:https://www.cnblogs.com/hylogs/p/13844922.html