使用make定义变量内联

时间:2018-06-18 11:22:07

标签: c gcc makefile

我有以下C代码:

file.c:

int i=VAR;

使用makefile编译:

CFLAGS =+ -DVAR=10

但是我不是仅使用“make”编译文件并依赖makefile中的变量,而是每次使用命令行编译程序时都想更改变量。
例如,我希望以下命令行起作用:

make CFLAGS=-DVAR=10

1 个答案:

答案 0 :(得分:2)

首先,这种语法是错误的:

CFLAGS =+ -DVAR=10

我认为你的意思是+=而不是=+。其次,对于某些工作定义,您运行的命令应该有效,所以没有关于发生了什么的信息以及为什么它不是您想要的,我们无法帮助。

然而,如果是我,我会采用不同的方式;我会做这样的事情:

VAR := 10

CFLAGS += -DVAR=$(VAR)

然后当我想改变它时,我会跑:

make VAR=20