C++ 使用Google Test、Clang和libc+构建测试时出现问题+;

C++ 使用Google Test、Clang和libc+构建测试时出现问题+;,c++,cmake,clang,googletest,libc++,C++,Cmake,Clang,Googletest,Libc++,我尝试使用以下CMake配置构建Google测试: $ CMAKE_CXX_COMPILER="clang++" CMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++ -U__STRICT_ANSI__" cmake ../source 构建显示CMake选择了正确的编译器,但我的编译器标志没有通过: $ VERBOSE=1 make ... /Users/jfreeman/local/bin/clang++ -I/Users/jfreeman/work/

我尝试使用以下CMake配置构建Google测试:

$ CMAKE_CXX_COMPILER="clang++" CMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++ -U__STRICT_ANSI__" cmake ../source
构建显示CMake选择了正确的编译器,但我的编译器标志没有通过:

$ VERBOSE=1 make
...
/Users/jfreeman/local/bin/clang++    -I/Users/jfreeman/work/googletest/source/include -I/Users/jfreeman/work/googletest/source      -DGTEST_HAS_PTHREAD=1   -o CMakeFiles/gtest.dir/src/gtest-all.cc.o -c /Users/jfreeman/work/googletest/source/src/gtest-all.cc
...
/Users/jfreeman/local/bin/clang++    -I/Users/jfreeman/work/googletest/source/include -I/Users/jfreeman/work/googletest/source      -DGTEST_HAS_PTHREAD=1   -o CMakeFiles/gtest_main.dir/src/gtest_main.cc.o -c /Users/jfreeman/work/googletest/source/src/gtest_main.cc

最终目标是,我希望我的项目(使用Clang和libc++构建)能够使用googletest构建测试。这意味着我还需要使用libc++构建Google测试。

在命令行中使用CMake变量有时需要-D(用于定义)标志


我必须添加
-DCMAKE_CXX_FLAGS=“…-DGTEST_USE_OWN_TR1_TUPLE=1”
才能使它工作。
    $ cmake -DCMAKE_CXX_COMPILER="clang++" -DCMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++ -U__STRICT_ANSI__"  ../source