保存此makefile
#example a = orginal_value b = $(a) a = later_value all: @echo $(b) |
运行make
#make
later_value
#example a = orginal_value b := $(a) a = later_value all: @echo $(b) |
#make
original_value
区别显而易见, := 定义的变量如果值内容本身就是变量,他不会延伸。如果是=,会延伸。所以在使用时,不需要延伸的时候一定要加上: ,防止不可控的情况。