У меня есть последняя версия XCode, установленная на моей Mac OS X 10.8 с LLVM 3.2. Теперь я хотел бы перейти на llvm/clang 3.3.Mac OS X 10.8 и llvm/clang 3.3 через homebrew
В моем текущем проекте я использую CMake с clang 3.2 и libC++, которые работают нормально.
Теперь я думал, что смогу переключиться с помощью доморощенного. Так что я сделал, выполнив следующую команду:
brew install llvm --with-clang --with-asan
Этот встроенный новый лязг и обновлять его в/USR/местные/бен.
Запуск CMake со следующими параметрами:
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=/usr/local/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/bin/clang++ ../
Преемник и мой выход CMake выглядит следующим образом:
-- Compiler: Clang
-- CXX_FLAGS: -Wall -std=c++11 -stdlib=libc++
-- Boost version: 1.53.0
-- adding include directory: /usr/local/include
-- adding include directory: /usr/local/include
-- adding include directory: /usr/local/include
-- adding include directory: /usr/local/include
-- Boost version: 1.53.0
-- Found the following Boost libraries:
-- filesystem
-- system
-- exception
-- Boost version: 1.53.0
-- Found the following Boost libraries:
-- unit_test_framework
-- thread
-- Configuring done
-- Generating done
Но если я начну строить свой проект, я получаю ошибку:
[ 2%] Building CXX object code/CMakeFiles/.../resource.cpp.o
In file included from /Users/.../code/net/resource.cpp:1:
/Users/.../resource.hpp:6:10: fatal error: 'string' file not found
#include <string>
^
1 error generated.
Так что, очевидно, стандартный заголовок не найден, что с clang 3.2 было найдено. Что может вызвать эту проблему?
Примечание: Я думаю, что моя проблема заключается в том, что квас строит LLVM/лязг с libstdC++ вместо LIBC++. Есть ли способ заставить его использовать libC++? Или есть ли другой простой способ обновить clang на OS X и использовать libC++?
Вы поняли это в конце концов? У меня такая же проблема ... –
Я только что обновил XCode после выхода новой версии. – ovanes