makefile:=和:=的区别是什么?

如题所述

:= 是覆盖之前的值。

:=是Makefile 中的一种运算,Makefile是一种常用于编译的脚本语言。

:=的用法实例:

“:=”表示变量的值决定于它在makefile中的位置,而不是整个makefile展开后的最终值。

x := foo
y := $(x) bar
x := xyz

在上例中,y的值将会是 foo bar ,而不是 xyz bar 了。

扩展资料

makefile中“=”和“:=”的区别到底有什么区别:

1、“=”

make会将整个makefile展开后,再决定变量的值。也就是说,变量的值将会是整个makefile中最后被指定的值。看例子:

x = foo
y = $(x) bar
x = xyz

在上例中,y的值将会是 xyz bar ,而不是 foo bar 。

2、“:=”

“:=”表示变量的值决定于它在makefile中的位置,而不是整个makefile展开后的最终值。

y="Hello World! "
y := "Hello World! Again"

在上例中,y的值将会是 Hello World! Again,而不是Hello World! 了。

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜