我的系统是ubuntu 12.04,默认的gcc是4.6。我安装了gcc 4.7,并使用apt-alternatives命令将gcc切换到gcc4.7。但在使用cmake代码时,如下图所示。我仍然得到“至少需要GCC 4.7”的错误。
CHECK_C_SOURCE_COMPILES("#define GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
#if GCC_VERSION < 40700
#error Not GCC 4.7.0+
#endif
int main() { return 0; }" HAVE_GCC_47)
if (NOT HAVE_GCC_47)
message(FATAL_ERROR "Need at least GCC 4.7")
endif()发布于 2013-11-01 08:58:45
您应该在命令行上设置C和/或CXX编译器,因此,如果您在src中有一个项目,并在src旁边创建了一个build目录,则以下调用将确保使用该编译器(这必须在一个干净的目录中传递,而不是具有现有缓存的目录:
cmake -DCMAKE_C_COMPILER:FILEPATH=/path/to/gcc -DCMAKE_CXX_COMPILER:FILEPATH=/path/to/g++ ../src您还可以在shell/中的命令行上设置环境变量CC和CXX。它们将被使用,并且在*nix环境中是相当标准的。http://www.cmake.org/Wiki/CMake_Useful_Variables上的页面也是CMake变量的有用参考。
https://stackoverflow.com/questions/19697851
复制相似问题