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

区别: 

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

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

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

‘=’:无关位置的等于

比如:

 x =a 

 y =$(x) 

 x =b

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

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

比如:

 x :=a  

 y :=$(x) 

 x :=b”

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区