我想在我的项目中删除一个实用文件的编译器标志。如何使用#pragma
?
问问题
1812 次
3 回答
2
只能使用 覆盖控制警告的标志#pragma
,请参阅诊断编译指示文档页面。
例如,您可以这样做:
#pragma GCC diagnostic ignored "-Wformat"
让 GCC 忽略不匹配的格式字符串生成的警告。
于 2010-12-02T10:02:16.907 回答
2
抱歉,这已经晚了,但我刚刚在我的项目中遇到了同样的问题。
我找不到 #pragma 来修改编译器标志列表,但我可以使用 GNU Make 的能力来修改每个目标的 make 变量。
我的一个文件要花很长时间才能编译-fvar-tracking-assignments
(它在几个版本中被添加到 -O2 中)。我正在寻找一种方法来为一个文件关闭它;在(徒劳地)寻找适当的编译指示之后,我只是将这一行添加到我的 makefile 中,以便CXXFLAGS
在编译和链接这些特定文件时进行修改:
ObtuseObj.o ObtuseObjTest.o ObtuseObjTest : CXXFLAGS += -fno-var-tracking-assignments
希望这对其他人有帮助!
于 2011-06-05T05:03:49.027 回答
0
我不确定 gcc 是否有这样的编译指示。我在gcc 页面上找不到 pragmas 的任何内容。
如果您下次要问与 gcc 相关的问题,请在 gcc 下标记它。我会标记它,但我不能。在 gcc 下添加标签会让你得到更多的回应。
于 2010-07-01T12:42:35.240 回答