makefile中":=","=","?=","+=" 之间的区别

2018-01-03 16:36:20 浏览数 (1)

区别: 

:= 有关位置的等于,值取决于当时位置的值

= 无关位置的等于,值永远等于最后的值

?= 是如果没有被赋值过就赋予等号后面的值 = 是添加等号后面的值      

‘=’:无关位置的等于

比如:

 x =a 

 y =$(x) 

 x =b

那么y的值永远等于最后的值,等于 b ,而不是a           

‘:=’:有关位置的等于

比如:

 x :=a  

 y :=$(x) 

 x :=b”

那么y的值取决于当时位置的值,等于 a ,而不是b   

0 人点赞