0

当我想从命令行将变量传递给make文件时,我会这样做:

make Variable="bla bla"

但是如果我想添加一个变量呢?

我试过这个:

make Variable+="bla bla"

它会生成编译器或链接器错误,就好像我没有添加任何东西一样。有什么办法吗?

4

1 回答 1

1

只需始终使用VAR += word您的语法Makefile,而不是VAR = word. 然后在命令行上,

 make VAR="bla bla"

以“bla bla”开头,VAR后跟在Makefile.

这假设您make支持+=语法。

另一种方法是使用两个不同的变量,比如VAR_CMDLINEVAR_MAKEMakefile你在哪里

 VAR_MAKE = whatever default value $(VAR_CMDLINE)
 all:
         echo $(VAR_MAKE)

并将其作为make VAR_CMDLINE="my additions". 这是 POSIXly 可移植的。

于 2013-06-07T21:51:50.713 回答