Visual Studio の空のプロジェクトで Boost ライブラリを使用する方法についての適切なステップバイステップの説明は何ですか?
ベストアンサー1
その間ネイトの答えすでにかなり良いのですが、要望に応じて Visual Studio 2010 向けにさらに拡張し、外部ライブラリを必要とするさまざまなオプション コンポーネントのコンパイルに関する情報も含める予定です。
ヘッダーのみのライブラリを使用している場合は、boost のダウンロードを解凍して環境変数を設定するだけです。以下の手順では、システム全体ではなく Visual Studio のみの環境変数を設定します。これは 1 回だけ実行すればよいことに注意してください。
- boost の最新バージョン (執筆時点では 1.47.0) を任意のディレクトリ (例
C:\boost_1_47_0
) に解凍します。 - Visual Studio で新しい空のプロジェクトを作成します。
- プロパティ マネージャーを開き、選択したプラットフォームの構成の 1 つを展開します。
- 選択して右クリックし
Microsoft.Cpp.<Platform>.user
、Properties
編集用のプロパティ ページを開くことを選択します。 VC++ Directories
左側を選択してください。- セクションを編集して
Include Directories
、boost ソース ファイルへのパスを含めます。 - 必要に応じて、選択した別のプラットフォームで手順 3 ~ 6 を繰り返します。
ビルドが必要な boost の部分を使用するが、外部依存関係を必要としない機能は使用しない場合は、ビルドは非常に簡単です。
- boost の最新バージョン (執筆時点では 1.47.0) を任意のディレクトリ (例
C:\boost_1_47_0
) に解凍します。 - 選択したプラットフォームの Visual Studio コマンド プロンプトを起動し、boost がある場所に移動します。
- 実行:
bootstrap.bat
b2.exe (以前の名前は bjam) をビルドします。 b2を実行します:
- :
b2 --toolset=msvc-10.0 --build-type=complete stage
; - 64ビット:
b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=64 stage
- :
散歩に行く / 映画を1本か2本見る / ....
- 上記の手順 2 ~ 6 を実行して、環境変数を設定します。
- セクションを編集して
Library Directories
、boost ライブラリ出力へのパスを含めます。(上記の例と手順のデフォルトは ですC:\boost_1_47_0\stage\lib
。x86 と x64 を並べて表示したい場合は、まずディレクトリの名前を変更して移動します (たとえば、<BOOST_PATH>\lib\x86
&へ<BOOST_PATH>\lib\x64
)。 - 必要に応じて、選択した別のプラットフォームで手順 2 ~ 6 を繰り返します。
オプションのコンポーネントが必要な場合は、さらに作業が必要です。これらは次のとおりです。
- Boost.IOStreams Bzip2 フィルター
- Boost.IOStreams Zlib フィルター
- ブースト.MPI
- ブーストPython
- Boost.Regex ICU サポート
Boost.IOStreams Bzip2 フィルター:
- 最新バージョンの bzip2 ライブラリ (執筆時点では 1.0.6) のソース ファイルを任意のディレクトリ (例
C:\bzip2-1.0.6
) に解凍します。 - 上記の 2 番目の手順に従って boost をビルドしますが、
-sBZIP2_SOURCE="C:\bzip2-1.0.6"
手順 5 で b2 を実行するときにオプションを追加します。
Boost.IOStreams Zlib フィルター
- 最新バージョンの zlib ライブラリ (執筆時点では 1.2.5) のソース ファイルを任意のディレクトリ (例
C:\zlib-1.2.5
) に解凍します。 - 上記の 2 番目の手順に従って boost をビルドしますが、
-sZLIB_SOURCE="C:\zlib-1.2.5"
手順 5 で b2 を実行するときにオプションを追加します。
ブースト.MPI
- Microsoft Compute Cluster Pack などの MPI ディストリビューションをインストールします。
- ブーストを構築するには、上記の 2 番目の手順セットのステップ 1 ~ 3 に従います。
project-config.jam
ブートストラップを実行した結果のディレクトリにあるファイルを編集します<BOOST_PATH>
。次の行を追加しますusing mpi ;
(「;」の前のスペースに注意してください)。- 上記の 2 番目の手順の残りの手順に従って、boost をビルドします。MPI インストールの自動検出が失敗した場合は、適切な場所で MPI を探すために適切なビルド ファイルを探して変更する必要があります。
ブーストPython
- ActiveState の ActivePython などの Python ディストリビューションをインストールします。Python インストールが PATH に含まれていることを確認します。
ライブラリの 32 ビット バージョンを完全にビルドするには、32 ビット Python が必要です。64 ビット バージョンでも同様です。このような理由で複数のバージョンがインストールされている場合は、特定のバージョンがどこにあるか、どのバージョンをいつ使用するかを b2 に指示する必要があります。これを行う 1 つの方法は、 bootstrap を実行した結果の
project-config.jam
ディレクトリにあるファイルを編集することです<BOOST_PATH>
。Python のインストール パスとバージョンに応じて調整し、次の 2 行を追加します (「;」の前のスペースに注意してください)。using python : 2.6 : C:\\Python\\Python26\\python ;
using python : 2.6 : C:\\Python\\Python26-x64\\python : : : <address-model>64 ;
このような明示的な Python 仕様により、現在 MPI ビルドが失敗することに注意してください。そのため、MPI もビルドする場合は、すべてをビルドするために、仕様ありと仕様なしのビルドを別々に実行する必要があります。
ブーストを構築するには、上記の 2 番目の手順に従います。
Boost.Regex ICU サポート
- ICU4C ライブラリの最新バージョン (執筆時点では 4.8) のソース ファイルを任意のディレクトリ (例
C:\icu4c-4_8
) に解凍します。 - で Visual Studio ソリューションを開きます
<ICU_PATH>\source\allinone
。 - 選択したプラットフォームのデバッグとリリースの両方の構成ですべてをビルドします。問題デバッグ ビルドとリリース ビルドの両方の出力が同じディレクトリにある場合 (これがデフォルトの動作です)、Visual Studio 2010 を使用して ICU4C の最新リリースをビルドします。 考えられる回避策は、すべてビルド (デバッグ ビルドなど) を実行し、次に 2 番目の構成 (リリース ビルドなど) ですべてリビルドを実行することです。
- x64 用にビルドする場合は、ビルド後の手順でビルド中の 64 ビット アプリケーションの一部を実行する必要があるため、x64 OS を実行する必要があります。
- 完了したら、必要に応じてソース ディレクトリを削除します。
- 上記の 2 番目の手順に従って boost をビルドしますが、
-sICU_PATH="C:\icu4c-4_8"
手順 5 で b2 を実行するときにオプションを追加します。