我曾在一个项目中使用g++编译以.c结尾的C代码文件。原因是有人告诉我g++具有更好的警告信息。
现在我正在将该项目的构建过程切换到使用CMake。我发现最初CMake想要使用gcc来编译C文件,但由于像在使用时声明变量之类的原因而失败。因此,我尝试使用g++编译C文件,通过以下设置:
set(CMAKE_C_COMPILER_INIT g++)
在CMakeLists.txt文件中添加了代码,但是导致了以下错误信息:
#error "The CMAKE_C_COMPILER is set to a C++ compiler"
我一直在将我的.c文件重命名为.cpp文件来解决这个问题,因为这似乎是让事情正常工作的最简单的方法,也可能是最好的方法。但我想知道是否有可能强制CMake使用g++编译C文件。
-std=c99
选项 - 无论如何。 - Jonathan Leffler