1. ホーム
  2. c++

[解決済み】Visual Studio 2010でBoostを使用する方法

2022-03-24 01:43:54

質問

Visual Studioの空のプロジェクトでBoostライブラリを使用する方法について、ステップバイステップで説明する良い方法は何でしょうか?

どのように解決するのですか?

一方 ネイトの答え また、外部ライブラリを必要とする様々なオプションコンポーネントでのコンパイルに関する情報も含まれています。

ヘッダのみのライブラリを使用する場合は、ダウンロードしたboostを解凍して、環境変数を設定するだけです。以下の手順で、Visual Studioのみに環境変数を設定し、システム全体には設定しないようにします。一度だけ行う必要があることに注意してください。

  1. boostの最新版(執筆時点では1.47.0)を任意のディレクトリに解凍します(例. C:\boost_1_47_0 ).
  2. Visual Studioで空のプロジェクトを新規に作成します。
  3. プロパティマネージャーを開き、選択したプラットフォーム用の設定の1つを展開します。
  4. &を選択し、右クリック Microsoft.Cpp.<Platform>.user を選択し Properties をクリックすると、編集用のプロパティ・ページが表示されます。
  5. 選択 VC++ Directories を左側に表示します。
  6. を編集します。 Include Directories セクションに、ブーストのソースファイルへのパスを追加します。
  7. 必要であれば、異なるプラットフォーム用に3〜6の手順を繰り返します。

boostのビルドが必要な部分を利用し、外部依存が必要な機能を利用しないのであれば、ビルドは非常にシンプルになります。

  1. boostの最新版(執筆時点では1.47.0)を任意のディレクトリに解凍します(例. C:\boost_1_47_0 ).
  2. 選択したプラットフォームの Visual Studio コマンドプロンプトを起動し、boost がある場所に移動します。
  3. 実行します。 bootstrap.bat を実行して、b2.exe(旧名:bjam)をビルドします。
  4. b2を実行します。

    • Win32です。 b2 --toolset=msvc-10.0 --build-type=complete stage ;
    • x64: b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=64 stage

散歩する/映画を見る/......。

  1. 上記のインストラクション一式から手順2~6を経て、環境変数を設定します。
  2. を編集します。 Library Directories セクションに、ブーストライブラリの出力先パスを追加してください。(上記の例と説明では、デフォルトは C:\boost_1_47_0\stage\lib . x86 & x64を並べたい場合は、まずディレクトリをリネームして移動します(例えば <BOOST_PATH>\lib\x86 &です。 <BOOST_PATH>\lib\x64 ).
  3. 必要に応じて、別のプラットフォームでも手順2~6を繰り返してください。

オプションのコンポーネントが必要な場合は、さらに作業が必要です。以下はその例です。

  • Boost.IOStreams Bzip2フィルタ
  • Boost.IOStreams Zlibフィルタ
  • ブースト.MPI
  • ブースト・Python
  • Boost.Regex ICUのサポート

Boost.IOStreams Bzip2 フィルタです。

  1. 最新版のbzip2ライブラリ(執筆時点では1.0.6)のソースファイルを任意のディレクトリに解凍します(例. C:\bzip2-1.0.6 ).
  2. 上記の2番目の手順でboostをビルドしますが、オプションで -sBZIP2_SOURCE="C:\bzip2-1.0.6" 手順5でb2を実行する際に

Boost.IOStreams Zlibフィルタ

  1. zlibライブラリの最新版(執筆時点では1.2.5)のソースファイルを任意のディレクトリにアンアーカイブする(例. C:\zlib-1.2.5 ).
  2. 上記の2番目の手順でboostをビルドしますが、オプションで -sZLIB_SOURCE="C:\zlib-1.2.5" 手順5でb2を実行する際に

ブースト.MPI

  1. Microsoft Compute Cluster Pack などの MPI ディストリビューションをインストールします。
  2. 上記2番目の手順の1~3の手順で、boostをビルドします。
  3. ファイルを編集する project-config.jam ディレクトリ内の <BOOST_PATH> を実行した結果、ブートストラップが発生しました。次のような行を追加してください using mpi ; (の前にスペースがあることに注意してください)。
  4. 上記の2番目の手順から残りの手順に従い、boostをビルドします。MPIインストールの自動検出に失敗した場合は、適切な場所でMPIを探すために適切なビルドファイルを探して修正する必要があります。

ブースト.パイソン

  1. ActiveState社のActivePythonなど、Pythonディストリビューションをインストールします。PythonのインストールがPATHにあることを確認します。
  2. 32ビット版のライブラリを完全にビルドするには32ビット版のPythonが必要であり、64ビット版も同様です。そのような理由で複数のバージョンをインストールしている場合、特定のバージョンがどこにあって、いつどれを使うかをb2に伝える必要があります。そのための一つの方法は、ファイル project-config.jam というディレクトリに <BOOST_PATH> を実行した結果、ブートストラップが生成されます。Pythonのインストール・パスとamp; バージョンに応じて、次の2行を追加してください(';'の前のスペースに注意してください)。

    using python : 2.6 : C:\\Python\\Python26\\python ;

    using python : 2.6 : C:\\Python\\Python26-x64\\python : : : <address-model>64 ;

    このようなPythonの明示的な指定は、現在MPIのビルドを失敗させる原因となっていることに注意してください。そのため、MPIもビルドする場合は、指定あり・なしのビルドを別々に行い、すべてをビルドする必要があります。

  3. 上記の2番目の手順で、boostをビルドします。

Boost.Regex ICUのサポート

  1. ICU4Cライブラリの最新版(執筆時点では4.8)のソースファイルを任意のディレクトリにアンアーカイブします(例. C:\icu4c-4_8 ).
  2. でVisual Studio Solutionを開きます。 <ICU_PATH>\source\allinone .
  3. デバッグとリリースの両方について、選択したプラットフォーム用にすべて構築します。がある場合があります。 問題 デバッグビルドとリリースビルドの出力が同じディレクトリにある場合(これはデフォルトの動作です)、ICU4Cの最近のリリースをVisual Studio 2010でビルドします。回避策としては、(例えばデバッグビルドの)すべてをビルドして、2番目のコンフィギュレーション(例えばリリースビルド)ですべてをリビルドすることができます。
  4. x64用にビルドする場合、ビルド後に64ビットアプリケーションを実行するステップがあるため、x64 OSを実行している必要があります。
  5. オプションで、終了時にソースディレクトリを削除します。
  6. 上記の2番目の手順でboostをビルドしますが、オプションで -sICU_PATH="C:\icu4c-4_8" 手順5でb2を実行する際に