Как активировать C++ 11 в CMake?

Когда я пытаюсь запустить сгенерированный CMake make-файл для компиляции моей программы, я получаю сообщение об ошибке, что

диапазон, основанный на циклах for, не поддерживается в режиме С++ 98.

Я попытался добавить 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.

348
задан Peter Mortensen 18 September 2019 в 09:29
поделиться