Variables 如何在向变量追加值列表时启动make?

Variables 如何在向变量追加值列表时启动make?,variables,makefile,compilation,gnu-make,Variables,Makefile,Compilation,Gnu Make,在我的Makefile中,我定义了一个变量 VAR = -Ddef1 -Ddef2 -Ddef3 我想推出这样的产品 make VAR+=-Ddef4 -Ddef5 但是空间把事情搞砸了。如何将VAR设置为值列表,就像在Makefile中一样?感谢您的提示。在您的Makefile中: VAR = -Ddef1 -Ddef2 -Ddef3 $(EXTRAVAR) 在命令行上: make EXTRAVAR="-Ddef4 -Ddef5" 与shell一样,必须引用带空格的

在我的Makefile中,我定义了一个变量

VAR = -Ddef1 -Ddef2 -Ddef3
我想推出这样的产品

make VAR+=-Ddef4 -Ddef5
但是空间把事情搞砸了。如何将VAR设置为值列表,就像在Makefile中一样?感谢您的提示。

在您的Makefile中:

VAR = -Ddef1 -Ddef2 -Ddef3 $(EXTRAVAR)
在命令行上:

make EXTRAVAR="-Ddef4 -Ddef5"
与shell一样,必须引用带空格的标记。在命令行上,
makefoo+=
执行与
makefoo=
相同的操作。它不追加,而是覆盖(在您的情况下)。因此,使用第二个变量
EXTRAVAR
的技巧是可行的