问题是,在Windows编译以及相同的代码,是无法编译在Ubuntu。 每次我得到这个错误:
cc1: warnings being treated as errors
现在,它的大的代码库,我不喜欢固定所有的警告。
有什么办法,我可以不顾警告编译成功?
问题是,在Windows编译以及相同的代码,是无法编译在Ubuntu。 每次我得到这个错误:
cc1: warnings being treated as errors
现在,它的大的代码库,我不喜欢固定所有的警告。
有什么办法,我可以不顾警告编译成功?
当然,找到其中-Werror
设置和删除该标志。 然后,警告将只警告。
你可以让所有的警告被视为这种使用-Wno-error
。 你可以让特定的警告被视为这种使用-Wno-error=<warning name>
其中, <warning name>
是您不想视为错误的警告的名称。
如果你想完全禁用所有警告,使用-w
(不推荐)。
来源: http://gcc.gnu.org/onlinedocs/gcc-4.3.2/gcc/Warning-Options.html
如果您正在编译Linux内核。 例如,如果你想禁用的警告“未使用,但设定变量”被视为错误。 您可以添加一个语句:
KBUILD_CFLAGS += $(call cc-option,-Wno-error=unused-but-set-variable,)
在Makefile
删除-Werror
从您拨打或CMake的文件中,如建议在这个岗位
感谢您的所有有用的建议。 我终于确信,有在我的代码没有任何警告,但再次被正从sqlite3的这样的警告:
Assuming signed overflow does not occur when assuming that (X - c) <= X is always true
我固定通过添加以下CFLAG:
-fno-strict-overflow
-Wall
和-Werror
编译器选项可能会导致它,请检查那些在编译器设置使用。