2016-05-01 15 views
0

OS X 10.11.4を新しくインストールしました。すぐにXcodeツールチェーンをインストールしてから、Homebrew、Boost 1.60をインストールしました。すべてがうまくいったことをテストするために、私はデスクトップに次のコードを書きました。Homebrew経由でインストールした後、OS XでBoost 1.60をリンクするのが難しい

私は通常、次のコマンドを実行したので、コンパイルしようとしました。

$ clang++ test.cpp -o test -lboost_system -lboost_filesystem 

次のエラーが発生しました。

test.cpp:3:10: fatal error: 'boost/filesystem.hpp' file not found 
#include <boost/filesystem.hpp> 

これは、過去にBoostをリンクするプロジェクトをいつもコンパイルしてきたことです。私はおそらく、clangが特定のパスを検索してライブラリを動的にリンクできるようにするステップを忘れてしまったと仮定しています。このコンパイルコマンドが機能するためには、私は何を変更する必要がありますか?

私にとって
+0

チェックはパスは/ usr/localを含めます/含まれて –

+0

ええ、私は前にこれを答えたと知っていた:http://stackoverflow.com/questions/27470462/how-do-i-add-the-boost-library-to-my-c-program-in- xcode-6-0 –

+0

私はXcodeを使用していません(私はほとんど行いません)。私はTerminalから単一のファイルをコンパイルしています。 Xcodeの中からこれを行うと、永続的にコンパイルされるすべての設定が変更されますか? –

答えて

0

あなたが自作のインストールに応じてパスを変更する必要がありますので、ブーストは、私のホームディレクトリのサブディレクトリにコンパイルされ、インストールされています:

flags="-std=c++1z -I/${HOME}/local/include -L${HOME}/local/lib -lboost_filesystem -lboost_system" 
c++ ${flags} -o jared jared.cpp 
0

まずブーストの場所を取得します次の手順を実行して:上記の画像から

brew info boost

enter image description here

、あなたは私の場所が

/usr/local/Cellar/boost/1.66.0

その後、コンパイルすることであることがわかります、以下を使用します。Xcodeプロジェクトにシステムがパスを含めること

c++ -I /usr/local/Cellar/boost/1.66.0 main.cpp -o boost

関連する問題