Programımı derlemek için bir CMake oluşturulan makefile çalıştırmayı denediğimde,
döngüler için aralık C ++ 98 modunda desteklenmez.
Ben ekleyerek çalıştı add_definitions(-std=c++0x)
kardeşime karşı CMakeLists.txt
, ancak yardım etmedi.
Ben de denedim:
if(CMAKE_COMPILER_IS_GNUCXX)
add_definitions(-std=gnu++0x)
endif()
Ben ne zaman g++ --version
ben alıyorum:
g ++ (Ubuntu / Linaro 4.6.1-9ubuntu3) 4.6.1
Ben de denedim SET(CMAKE_CXX_FLAGS "-std=c++0x")
, bu da çalışmıyor.
CMake kullanarak C ++ 11 özelliklerini nasıl etkinleştirebileceğimi anlamıyorum.
set(CMAKE_CXX_STANDARD 11)
(hedefi tanımlamadan önce) en iyi yoldur.
CXX_STANDARD
yapar değil bu yüzden temelde geri düşmek zorunda MSVC üzerinde çalışmaya target_compile_features
arası bir platform çalışan bir şey istiyorum.
SET(CMAKE_CXX_FLAGS "-std=c++0x")
Benim için para cezası çalışır, bu yüzden CMakeLists dosyasında başka bir yerde bir sorun muhtemelen yoktur. Daha sonra CMAKE_CXX_FLAGS içeriğinin üzerine yanlışlıkla yazmadığınızdan emin olun.