【发布时间】:2011-11-28 06:11:36
【问题描述】:
我写了一个make文件。
在 make 文件中我使用了一个变量,比如 EXTRAFLAGS,它看起来像这样。
EXTRAFLAGS += -D _MSC_VER
EXTRAFLAGS += -D BINARYINPUT
EXTRAFLAGS += -D ENABLEVERSION2D2
此外, 我使用编译器标志
CFLAGS = -Werror -Wall -I $(INC) $(EXTRAFLAGS)
和
mingw32-gcc $(CFLAGS) -o nameofexe OBJ's
我使用这个makefile 没有任何问题。但是,当我禁用预处理器定义时,通过在 EXTRAFLAGS 中的一个语句之前引入“#”并重新制作它,我将目标更新。我无法将预处理器定义引入敏感列表。
我目前正在使用的临时解决方法是,引入虚假目标清理并删除所有目标文件并重新编译所有内容。但这是浪费时间。如何更好地管理当前场景?
【问题讨论】:
-
你的意思是如果你改变
EXTRAFLAGS文件不会重新构建? -
是的,当我更改额外标志时,它们不会重新构建