通过CMake在Xcode 4.2项目中使用C++ 0x

Ger*_*ald 17 c++ xcode cmake c++11

我正在使用CMake为OSX Lion上的Xcode 4.2生成一个项目文件,我正在使用LLVM中的一些C++ 0x功能,如nullptr和auto.为了使用它们,Xcode要求设置2个项目设置:

C++语言方言设置为C++ 0x [-std = C++ 0x]

C++标准库设置为libc ++(LLVM C++标准库,支持C++ 0X)

目前每次生成Xcode项目时,我都必须进入并手动调整这些设置.

有没有办法在CMake中指定这些设置?

谢谢

mok*_*oka 23

在深入研究一下之后,这些是设置适当xcode设置的命令:

set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "com.apple.compilers.llvm.clang.1_0")
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++0x")
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x -stdlib=libc++ -g -Wall")
Run Code Online (Sandbox Code Playgroud)

我认为设置c ++标志是多余的,所以它也可以在没有最后一行的情况下工作.

希望有所帮助!

  • 在第四个`set`命令中你真的是指'CMAKE_C_FLAGS`吗? (2认同)