最佳答案
当我试图运行一个CMake生成的makefile来编译我的程序时,我得到的错误是
c++ 98模式不支持基于范围的for循环。
我尝试将add_definitions(-std=c++0x)
添加到我的CMakeLists.txt
中,但它没有帮助。
我也试过这个:
if(CMAKE_COMPILER_IS_GNUCXX)
add_definitions(-std=gnu++0x)
endif()
当我执行g++ --version
时,我得到:
g++ (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
我也尝试了SET(CMAKE_CXX_FLAGS "-std=c++0x")
,这也不工作。
我不明白如何使用CMake激活c++ 11特性。