我正在尝试编译一个使用的CMake项目
set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-Wall -std=gnu++0x")
在MacOS X Lion下的CMakeLists.txt文件中.我已经安装了XCode 4.2.1.但编译器失败了:
cd something/src/lib && /usr/bin/c++ -Dlib_ginacra_EXPORTS -Wall -std=gnu++0x -fPIC -o CMakeFiles/lib_ginacra.dir/utilities.cpp.o -c something/src/lib/utilities.cpp cc1plus: error: unrecognized command line option "-std=gnu++0x"
编译器的版本是:
c++ --version i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
解决方法
GCC 4.2很古老,但Apple没有发布新版本.
您可以从Mac Ports(可能更简单,更快)等地方安装现代GCC,也可以按照http://gcc.gnu.org/wiki/InstallingGCC的说明自行构建.