(1)在Makefile中,使用变量只是简单的将其内容进行替换,变量的使用格式见下例:
Objects=a.o b.o c.o
Program:$(Objects)
gcc $(Objects) -o Program
(2)变量也可以使用在其后定义的变量,见下例:
Obj1=$(Obj2)
Obj2=$(Obj3)
Obj3=aaa
但是这样会使Make一直去寻找变量的真实值,导致运行速度变慢。
(3)变量只能使用在其前面定义的变量,见下例:
Obj1:=aaa
Obj2:=$(Obj1) bar
该情况等价于 Obj1=aaa Obj2=aaa bar
Obj2:=$(Obj1) bar
Obj1:=aaa
由于Obj1的定义在Obj2后面,Obj2无法引用Obj1的值,因此Obj2=bar Obj1=aaa