1. 程式人生 > >“=” “:=” 區別

“=” “:=” 區別


     1、“=”

      make會將整個makefile展開後,再決定變數的值。也就是說,變數的值將會是整個makefile中最後被指定的值。看例子:

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

      在上例中,y的值將會是 xyz bar ,而不是 foo bar 。

      2、“:=”

      “:=”表示變數的值決定於它在makefile中的位置,而不是整個makefile展開後的最終值。

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

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