如何禁用 GCC 警告"cc1: warning: command line option ‘-std=c++11’ is valid for C++/ObjC++ but not for C [en



我是cmake和gcc的新手。我在公司新职位上的第一项任务是清理linux编译中的错误我做了大部分,现在我看到的唯一警告是

cc1: warning: command line option ‘-std=c++11’ is valid for C++/ObjC++ but not for C [enabled by default]

我想抑制警告或解决cmake文件中的问题。不幸的是,我仍然没有找到适合这里的正确-Wno-xxx语句。

谢谢!

使用-Wno-xxx选项可以禁用代码问题警告,因为有时您无法控制源代码。但是,告诉您命令行选项不正确的警告不能用另一个命令行选项静音——如果您可以影响编译器调用,那么为什么不删除不正确的选项呢?

这个特别的警告告诉您在编译C代码时不能将标准设置为C++11。要消除它,请找到构建配置中定义-std=c++11的位置,并确保它只适用于C++编译,而不适用于C。例如,将它从CFLAGS移动到CXXFLAGS,或cmake的等效代码。

最新更新