makefile中 $=
时间: 2023-10-03 18:10:20 浏览: 153
makefile 函数
在makefile中,$=是一个变量赋值符号,它表示将右边的值赋给左边的变量。与其他赋值符号不同的是,$=是递归展开的,也就是说,它允许在变量定义中使用其他变量。例如:
```
FOO = bar
BAZ = $(FOO)baz
```
这里,定义了一个名为FOO的变量,并将其赋值为bar。接着,定义了一个名为BAZ的变量,并将其赋值为$(FOO)baz。由于$=是递归展开的,所以$(FOO)会被展开为bar,因此BAZ的最终值为barbaz。
需要注意的是,$=的递归展开可能会导致一些问题,特别是在定义复杂的变量时。为了避免这种情况,可以使用其他赋值符号,如:=或?=,它们不会递归展开。
阅读全文