首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >通过命令行追加到GNU make变量

通过命令行追加到GNU make变量
EN

Stack Overflow用户
提问于 2010-01-25 07:33:50
回答 1查看 55K关注 0票数 70

我正在使用GNU-make Makefile构建一个C项目,其中包含几个目标(allclean和一些特定于项目的目标)。在调试过程中,我希望在不永久编辑Makefile的情况下将一些标志附加到单个构建中(例如,添加调试符号或设置预处理器标志)。

在过去,我已经这样做了(使用调试符号示例):

代码语言:javascript
复制
make target CFLAGS+=-g

不幸的是,这不是附加到CFLAGS变量,而是清除它并停止它的编译。有没有一种干净的方法可以做到这一点,而不是定义某种附加到CFLAGSLDFLAGS末尾的伪变量

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-25 07:37:42

查看override directive。您可能需要修改makefile一次,但它应该可以执行您想要的操作。

makefile示例:

代码语言:javascript
复制
override CFLAGS += -Wall

app: main.c
    gcc $(CFLAGS) -o app main.c 

命令行示例:

代码语言:javascript
复制
$ make
gcc -Wall -o app main.c 
$ make CFLAGS=-g
gcc -g -Wall -o app main.c 
票数 91
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2129391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档