2013-06-28 11 views
5

Mac OS X 10.8にLLVM 3.2をインストールしたXCodeの最新バージョンがあります。今度はllvm/clang 3.3に切り替えたいと思います。Mac OS X 10.8およびllvm/clang 3.3 by自作

私の現在のプロジェクトでは、動作しているclang 3.2とlibC++でCMakeを使用しています。

今、私は自宅を使って切り替えることができると思った。それでは、私がやったことは、次のコマンドを発行しました:

brew install llvm --with-clang --with-asan 

これは新しい打ち鳴らすを構築し、/ usr/local/binにそれを更新しました。次のパラメータを使用して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が見つかりました。この問題の原因は何ですか?

備考: 私は私の問題は、BREWはのlibstdC++の代わりのlibC++とLLVM /打ち鳴らすを構築することだと思います。 libC++を強制的に使用できる方法はありますか?または、OS XでclangをアップグレードしてlibC++を使用する他の簡単な方法はありますか?

+0

あなたは最終的にそれを理解しましたか?私は同じ問題を抱えています... –

+0

新しいバージョンが出てからちょうどXCodeアップデートをしました。 – ovanes

答えて

2

libC++を使用するようにclangを構成するビルドパラメータに-stdlib=libc++を追加します。

+0

これは私のために働いた! 'brew install cpp-ethereum --with-evmjit' – Eamorr

関連する問題