Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Building Boost with Visual Studio

Building Boost 1.55.0 with Visual Studio

Download

  1. Boost 1.55.0(boost_1_55_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_55_0)
    http://www.boost.org/users/history/version_1_55_0.html
    https://github.com/boostorg/boost/tree/boost-1.55.0

  2. HPC Pack 2012 R2 MS-MPI Redistributable Package - 日本語(MSMPISetup.exe)をダウンロードしてインストールする。
    (C:\Program Files\Microsoft MPIにインストールされる。)
    http://www.microsoft.com/ja-jp/download/details.aspx?id=41634

Build

  1. Boost.Build engineの設定を修正する。

    • tools\build\v2\user-config.jam
      58 line (add)

      using mpi ;
      
    • tools\build\v2\tools\mpi.jam
      249 line

      local cluster_pack_path_native = "C:\\Program Files\\Microsoft MPI" ;
      

      251 line

      if [ GLOB $(cluster_pack_path_native)\\Inc : mpi.h ]
      

      260 line

      options = <include>$(cluster_pack_path)/Inc
      
  2. ソースコードを修正する。
    (Boost 1.55.0 Releasenote "Known Bugs with Visual Studio 2013/Visual C++ 12" http://www.boost.org/users/history/version_1_55_0.html)

    • boost\archive\iterators\transform_width.hpp
      33 line
      #include <algorithm>
      
  3. Visual Studioの開発者コマンドプロンプト(Tools\開発者コマンドプロンプト for VS2013)を管理者権限で起動して以下のコマンドを実行する。
    (開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。)

    • Win32

      cd C:\boost_1_55_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      cd C:\boost_1_55_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.56.0 with Visual Studio

Download

  1. Boost 1.56.0(boost_1_56_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_56_0)
    http://www.boost.org/users/history/version_1_56_0.html
    https://github.com/boostorg/boost/tree/boost-1.56.0

  2. HPC Pack 2012 R2 MS-MPI Redistributable Package - 日本語(MSMPISetup.exe)をダウンロードしてインストールする。
    (C:\Program Files\Microsoft MPIにインストールされる。)
    http://www.microsoft.com/ja-jp/download/details.aspx?id=41634

Build

  1. Boost.Build engineの設定を修正する。

    • tools\build\example\user-config.jam
      user-config.jamをtools\build\にコピーする。
      58 line (add)

      using mpi ;
      
    • tools\build\src\tools\mpi.jam
      249 line

      local cluster_pack_path_native = "C:\\Program Files\\Microsoft MPI" ;
      

      251 line

      if [ GLOB $(cluster_pack_path_native)\\Inc : mpi.h ]
      

      260 line

      options = <include>$(cluster_pack_path)/Inc 
      
  2. Visual Studioの開発者コマンドプロンプト(Tools\開発者コマンドプロンプト for VS2013)を管理者権限で起動して以下のコマンドを実行する。
    (開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。)

    • Win32

      cd C:\boost_1_56_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      cd C:\boost_1_56_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。

  3. Boost.MPI(libboost_mpi-vc○○○-mt-1_56.lib)がビルドされない場合、以下の方法でビルドする。

    1. project-config.jamの設定を修正する。

      • project-config.jam
        4 line (add)
        using mpi ;
        
    2. 再度、3のコマンドを実行する。

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.57.0 with Visual Studio

Download

  1. Boost 1.57.0(boost_1_57_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_57_0)
    http://www.boost.org/users/history/version_1_57_0.html
    https://github.com/boostorg/boost/tree/boost-1.57.0

  2. HPC Pack 2012 R2 MS-MPI Redistributable Package - 日本語(MSMPISetup.exe)をダウンロードしてインストールする。
    (C:\Program Files\Microsoft MPIにインストールされる。)
    http://www.microsoft.com/ja-jp/download/details.aspx?id=41634

Build

  1. Boost.Build engineの設定を修正する。

    • tools\build\example\user-config.jam
      user-config.jamをtools\build\にコピーする。
      58 line (add)

      using mpi ;
      
    • tools\build\src\tools\mpi.jam
      249 line

      local cluster_pack_path_native = "C:\\Program Files\\Microsoft MPI" ;
      

      251 line

      if [ GLOB $(cluster_pack_path_native)\\Inc : mpi.h ]
      

      260 line

      options = <include>$(cluster_pack_path)/Inc 
      
  2. Visual Studioの開発者コマンドプロンプト(Tools\開発者コマンドプロンプト for VS2013)を管理者権限で起動して以下のコマンドを実行する。
    (開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。)

    • Win32

      cd C:\boost_1_57_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      cd C:\boost_1_57_0
      bootstrap.bat
      b2.exe toolset=msvc-12.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。

  3. Boost.MPI(libboost_mpi-vc○○○-mt-1_57.lib)がビルドされない場合、以下の方法でビルドする。

    1. project-config.jamの設定を修正する。

      • project-config.jam
        4 line (add)
        using mpi ;
        
    2. 再度、3のコマンドを実行する。

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.59.0 with Visual Studio

Download

  1. Boost 1.59.0(boost_1_59_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_59_0)
    http://www.boost.org/users/history/version_1_59_0.html
    https://github.com/boostorg/boost/tree/boost-1.59.0

  2. HPC Pack 2012 R2 MS-MPI Redistributable Package - 日本語(MSMPISetup.exe)をダウンロードしてインストールする。
    (C:\Program Files\Microsoft MPIにインストールされる。)
    http://www.microsoft.com/ja-jp/download/details.aspx?id=41634

Build

  1. Boost.Build Engineの設定を修正する。

    • boost_1_59_0\tools\build\src\tools\mpi.jam
      249 line
      local cluster_pack_path_native = "C:\\Program Files\\Microsoft MPI" ;
      
      251 line
      if [ GLOB $(cluster_pack_path_native)\\Inc : mpi.h ]
      
      260 line
      options = <include>$(cluster_pack_path)/Inc 
      
  2. Visual Studioの開発者コマンドプロンプト(開発者コマンドプロンプト for VS20XX)を管理者権限で起動して以下のコマンドを実行する。
    ※ 開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。

    • Win32

      cd C:\boost_1_59_0
      bootstrap.bat
      
    • x64

      cd C:\boost_1_59_0
      bootstrap.bat
      
  3. 生成されたproject-config.jamの設定を修正する。

    • boost_1_59_0\project-config.jam
      4 line (add)
      using mpi ;
      
  4. Visual Studioの開発者コマンドプロンプト(開発者コマンドプロンプト for VS20XX)に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」を指定する。

    • Win32

      b2.exe toolset=msvc-14.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.60.0 with Visual Studio

Download

  1. Boost 1.60.0(boost_1_60_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_60_0)
    http://www.boost.org/users/history/version_1_60_0.html
    https://github.com/boostorg/boost/tree/boost-1.60.0

  2. Microsoft MPI 7.0.12437.6(MSMpiSetup.exe)とMicrosoft MPI SDK 7.0.12437.6(msmpisdk.msi)をダウンロードしてインストールする。
    (それぞれC:\Program Files\Microsoft MPIとC:\Program Files (x86)\Microsoft SDKs\MPIにインストールされる。)
    https://www.microsoft.com/en-us/download/details.aspx?id=49926

Build

  1. Boost.Build Engineの設定を修正する。

    • boost_1_60_0\tools\build\src\tools\mpi.jam
      249-251 line

      local microsoft_mpi_sdk_path = "C:\\Program Files (x86)\\Microsoft SDKs\\MPI" ;
      local microsoft_mpi_path = "C:\\Program Files\\Microsoft MPI" ;
      if [ GLOB $(microsoft_mpi_sdk_path)\\Include : mpi.h ]
      

      260-262 line

      options = <include>$(microsoft_mpi_sdk_path)/Include
                <address-model>64:<library-path>$(microsoft_mpi_sdk_path)/Lib/x64
                <library-path>$(microsoft_mpi_sdk_path)/Lib/x86
      

      268 line

      .mpirun = "\"$(microsoft_mpi_path)\\Bin\\mpiexec.exe"\" ;
      
  2. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")を管理者権限で起動して以下のコマンドを実行する。
    ※ 開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。

    • Win32

      cd C:\boost_1_60_0
      bootstrap.bat
      
    • x64

      cd C:\boost_1_60_0
      bootstrap.bat
      
  3. 生成されたproject-config.jamの設定を修正する。

    • boost_1_60_0\project-config.jam
      4 line (add)
      using mpi ;
      
  4. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」を指定する。

    • Win32

      b2.exe toolset=msvc-14.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.61.0 with Visual Studio

Download

  1. Boost 1.61.0(boost_1_61_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_61_0)
    http://www.boost.org/users/history/version_1_61_0.html
    https://github.com/boostorg/boost/tree/boost-1.61.0

  2. Microsoft MPI 7.0.12437.6(MSMpiSetup.exe)とMicrosoft MPI SDK 7.0.12437.6(msmpisdk.msi)をダウンロードしてインストールする。
    (それぞれC:\Program Files\Microsoft MPIとC:\Program Files (x86)\Microsoft SDKs\MPIにインストールされる。)
    https://www.microsoft.com/en-us/download/details.aspx?id=49926

Build

  1. Boost.Build Engineの設定を修正する。

    • boost_1_61_0\tools\build\src\tools\mpi.jam
      249-251 line

      local microsoft_mpi_sdk_path = "C:\\Program Files (x86)\\Microsoft SDKs\\MPI" ;
      local microsoft_mpi_path = "C:\\Program Files\\Microsoft MPI" ;
      if [ GLOB $(microsoft_mpi_sdk_path)\\Include : mpi.h ]
      

      260-262 line

      options = <include>$(microsoft_mpi_sdk_path)/Include
                <address-model>64:<library-path>$(microsoft_mpi_sdk_path)/Lib/x64
                <library-path>$(microsoft_mpi_sdk_path)/Lib/x86
      

      268 line

      .mpirun = "\"$(microsoft_mpi_path)\\Bin\\mpiexec.exe"\" ;
      
  2. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")を管理者権限で起動して以下のコマンドを実行する。
    ※ 開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。

    • Win32

      cd C:\boost_1_61_0
      bootstrap.bat
      
    • x64

      cd C:\boost_1_61_0
      bootstrap.bat
      
  3. 生成されたproject-config.jamの設定を修正する。

    • boost_1_61_0\project-config.jam
      4 line (add)
      using mpi ;
      
  4. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」を指定する。

    • Win32

      b2.exe toolset=msvc-14.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.63.0 with Visual Studio

Download

  1. Boost 1.63.0(boost_1_63_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_63_0)
    http://www.boost.org/users/history/version_1_63_0.html
    https://github.com/boostorg/boost/tree/boost-1.63.0

  2. Microsoft MPI 7.1.12437.25(MSMpiSetup.exe)とMicrosoft MPI SDK 7.1.12437.25(msmpisdk.msi)をダウンロードしてインストールする。
    (それぞれC:\Program Files\Microsoft MPIとC:\Program Files (x86)\Microsoft SDKs\MPIにインストールされる。)
    https://www.microsoft.com/en-us/download/details.aspx?id=52981

Build

  1. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")を管理者権限で起動して以下のコマンドを実行する。
    ※ 開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。

    • Win32

      cd C:\boost_1_63_0
      bootstrap.bat
      
    • x64

      cd C:\boost_1_63_0
      bootstrap.bat
      
  2. 生成されたproject-config.jamの設定を修正する。

    • boost_1_63_0\project-config.jam
      4 line (add)
      using mpi ;
      
  3. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」を指定する。

    • Win32

      b2.exe toolset=msvc-14.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

Building Boost 1.64.0 with Visual Studio

Download

  1. Boost 1.64.0(boost_1_64_0.zip)をダウンロードしてファイルを解凍する。(C:\boost_1_64_0)
    http://www.boost.org/users/history/version_1_64_0.html
    https://github.com/boostorg/boost/tree/boost-1.64.0

  2. Microsoft MPI 8.0.12438.0(MSMpiSetup.exe)とMicrosoft MPI SDK 8.0.12438.0(msmpisdk.msi)をダウンロードしてインストールする。
    (それぞれC:\Program Files\Microsoft MPIとC:\Program Files (x86)\Microsoft SDKs\MPIにインストールされる。)
    https://www.microsoft.com/en-us/download/details.aspx?id=54607

Build

  1. 以下のプルリクエストの修正をマージする。

  2. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")を管理者権限で起動して以下のコマンドを実行する。
    ※ 開発者コマンドプロンプトを管理者権限で起動しないとinstallが失敗する。

    • Win32

      cd C:\boost_1_64_0
      bootstrap.bat
      
    • x64

      cd C:\boost_1_64_0
      bootstrap.bat
      
  3. 生成されたproject-config.jamの設定を修正する。

    • boost_1_64_0\project-config.jam
      4 line (add)
      using mpi ;
      
  4. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」、2017は「14.1」を指定する。

    • Win32

      b2.exe toolset=msvc-14.1 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.1 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      
  5. ビルドが成功すると<prefix>/libに以下のファイルが生成される。  

    • libboost_atomic-vc141-mt-1_64.lib
    • libboost_atomic-vc141-mt-gd-1_64.lib
    • libboost_chrono-vc141-mt-1_64.lib
    • libboost_chrono-vc141-mt-gd-1_64.lib
    • libboost_container-vc141-mt-1_64.lib
    • libboost_container-vc141-mt-gd-1_64.lib
    • libboost_context-vc141-mt-1_64.lib
    • libboost_context-vc141-mt-gd-1_64.lib
    • libboost_coroutine-vc141-mt-1_64.lib
    • libboost_coroutine-vc141-mt-gd-1_64.lib
    • libboost_date_time-vc141-mt-1_64.lib
    • libboost_date_time-vc141-mt-gd-1_64.lib
    • libboost_exception-vc141-mt-1_64.lib
    • libboost_exception-vc141-mt-gd-1_64.lib
    • libboost_fiber-vc141-mt-1_64.lib
    • libboost_fiber-vc141-mt-gd-1_64.lib
    • libboost_filesystem-vc141-mt-1_64.lib
    • libboost_filesystem-vc141-mt-gd-1_64.lib
    • libboost_graph-vc141-mt-1_64.lib
    • libboost_graph-vc141-mt-gd-1_64.lib
    • libboost_graph_parallel-vc141-mt-1_64.lib
    • libboost_graph_parallel-vc141-mt-gd-1_64.lib
    • libboost_iostreams-vc141-mt-1_64.lib
    • libboost_iostreams-vc141-mt-gd-1_64.lib
    • libboost_locale-vc141-mt-1_64.lib
    • libboost_locale-vc141-mt-gd-1_64.lib
    • libboost_log-vc141-mt-1_64.lib
    • libboost_log-vc141-mt-gd-1_64.lib
    • libboost_log_setup-vc141-mt-1_64.lib
    • libboost_log_setup-vc141-mt-gd-1_64.lib
    • libboost_math_c99-vc141-mt-1_64.lib
    • libboost_math_c99-vc141-mt-gd-1_64.lib
    • libboost_math_c99f-vc141-mt-1_64.lib
    • libboost_math_c99f-vc141-mt-gd-1_64.lib
    • libboost_math_c99l-vc141-mt-1_64.lib
    • libboost_math_c99l-vc141-mt-gd-1_64.lib
    • libboost_math_tr1-vc141-mt-1_64.lib
    • libboost_math_tr1-vc141-mt-gd-1_64.lib
    • libboost_math_tr1f-vc141-mt-1_64.lib
    • libboost_math_tr1f-vc141-mt-gd-1_64.lib
    • libboost_math_tr1l-vc141-mt-1_64.lib
    • libboost_math_tr1l-vc141-mt-gd-1_64.lib
    • libboost_mpi-vc141-mt-1_64.lib
    • libboost_mpi-vc141-mt-gd-1_64.lib
    • libboost_prg_exec_monitor-vc141-mt-1_64.lib
    • libboost_prg_exec_monitor-vc141-mt-gd-1_64.lib
    • libboost_program_options-vc141-mt-1_64.lib
    • libboost_program_options-vc141-mt-gd-1_64.lib
    • libboost_random-vc141-mt-1_64.lib
    • libboost_random-vc141-mt-gd-1_64.lib
    • libboost_regex-vc141-mt-1_64.lib
    • libboost_regex-vc141-mt-gd-1_64.lib
    • libboost_serialization-vc141-mt-1_64.lib
    • libboost_serialization-vc141-mt-gd-1_64.lib
    • libboost_signals-vc141-mt-1_64.lib
    • libboost_signals-vc141-mt-gd-1_64.lib
    • libboost_system-vc141-mt-1_64.lib
    • libboost_system-vc141-mt-gd-1_64.lib
    • libboost_test_exec_monitor-vc141-mt-1_64.lib
    • libboost_test_exec_monitor-vc141-mt-gd-1_64.lib
    • libboost_thread-vc141-mt-1_64.lib
    • libboost_thread-vc141-mt-gd-1_64.lib
    • libboost_timer-vc141-mt-1_64.lib
    • libboost_timer-vc141-mt-gd-1_64.lib
    • libboost_type_erasure-vc141-mt-1_64.lib
    • libboost_type_erasure-vc141-mt-gd-1_64.lib
    • libboost_unit_test_framework-vc141-mt-1_64.lib
    • libboost_unit_test_framework-vc141-mt-gd-1_64.lib
    • libboost_wave-vc141-mt-1_64.lib
    • libboost_wave-vc141-mt-gd-1_64.lib
    • libboost_wserialization-vc141-mt-1_64.lib
    • libboost_wserialization-vc141-mt-gd-1_64.lib

Option : Build Boost.Python and Boost.NumPy

  1. Python 3.6.1(python-3.6.1.exeまたはpython-3.6.1-amd64.exe)をダウンロードしてインストールする。(C:\Python36)
    カスタムインストールを選択、以下の設定でインストールする。
    https://www.python.org/downloads/release/python-361/

    Advanced Options

    • Install for all users ☑(check)

    • Add Python to environment variables ☑(check)

    • Customize install location C:\Python36\

  2. NumPy 1.12.1(numpy‑1.12.1+mkl‑cp36‑cp36m‑win32.whlまたはnumpy-1.12.1+mkl-cp36-cp36m-win_amd64.whl)のWheelをダウンロードする。(C:\)
    コマンドプロンプトで以下のコマンドを実行する。
    http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

    • Win32
    cd C:\
    pip install numpy‑1.12.1+mkl‑cp36‑cp36m‑win32.whl
    
    • x64
    cd C:\
    pip install numpy-1.12.1+mkl-cp36-cp36m-win_amd64.whl
    
  3. project-config.jamの設定を修正する。
    ※ Visual C++のバージョン(14.1)とコンパイラ(cl.exe)を指定する。
    ※ Boost.MPIと同時にビルドできないため、設定(using mpi ; )をコメントアウトする。
    ※ Pythonのバージョン(3.6)、ディレクトリ、インクルードディレクトリ、ライブラリディレクトリ、アドレスモデルを指定する。

    • Win32
      3-7 line (fix and add)

      using msvc : 14.1 : "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\bin\HostX64\x86\cl.exe" ; 
      
      # using mpi ;
      
      using python : 3.6 : C:\\Python36 : C:\\Python36\\include : C:\\Python36\\libs : ; 
      
    • x64
      3-7 line (fix and add)

      using msvc : 14.1 : "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64\cl.exe" ; 
      
      # using mpi ;
      
      using python : 3.6 : C:\\Python36 : C:\\Python36\\include : C:\\Python36\\libs : <address-model>64 ; 
      
  4. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」、2017は「14.1」を指定する。

    • Win32

      b2.exe toolset=msvc-14.1 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
      
    • x64

      b2.exe toolset=msvc-14.1 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
      
  5. ビルドが成功すると<prefix>/libに以下のファイルが生成される。

    • libboost_numpy3-vc141-mt-1_64.lib
    • libboost_numpy3-vc141-mt-gd-1_64.lib
    • libboost_python3-vc141-mt-1_64.lib
    • libboost_python3-vc141-mt-gd-1_64.lib

Option : Build Boost.bzip2 and Boost.zlib

  1. bzip2(bzip2-1.0.6.tar.gz)とzlib(zlib1211.zip)をダウンロードして展開する。(C:\)
    http://www.bzip.org/downloads.html
    http://zlib.net/

  2. Visual Studioの開発者コマンドプロンプト("開発者コマンドプロンプト for VS20XX"または"VS20XX x86/x64 Native Tools Commond Prompt")に続けて以下のコマンドを実行する。
    ※ -jオプションはコンパイルの並列数を指定する。通常はCPUの論理プロセッサ数を指定する。
    ※ toolsetはVisual Studioのバージョンを指定する。2012は「11.0」、2013は「12.0」、2015は「14.0」、2017は「14.1」を指定する。

    • Win32

      b2.exe toolset=msvc-14.1 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8 -s BZIP2_SOURCE="C:\bzip2-1.0.6" -s ZLIB_SOURCE="C:\zlib-1.2.11" 
      
    • x64

      b2.exe toolset=msvc-14.1 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8 -s BZIP2_SOURCE="C:\bzip2-1.0.6" -s ZLIB_SOURCE="C:\zlib-1.2.11"
      
  3. ビルドが成功すると<prefix>/libに以下のファイルが生成される。  

    • libboost_bzip2-vc141-mt-1_64.lib
    • libboost_bzip2-vc141-mt-gd-1_64.lib
    • libboost_zlib-vc141-mt-1_64.lib
    • libboost_zlib-vc141-mt-gd-1_64.lib

Environment Variable

  1. 環境変数BOOST_ROOTを作成してBoostのパス(C:\Program Files\Boost)を設定する。

I still got "warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam"

cobek commented Aug 14, 2015

HI,
I am completely new in this Boost thing, but hopefully my answer will have some sense.
I think that you have to move user-config.jam from tools\build\example\ directory to tools\build\src\ directory.
At least it worked in my case to generate mpi library.

Thanks for the detailed information.
I found some path trouble when running the step 4 with VS2013. The issue and its solution is described in the link below:

http://stackoverflow.com/questions/9433311/error-in-building-boost-mpi-in-msvc-2010/32635378#32635378

Thank you for your blogs.
I still have some issues. I built boost 1.61 with VS2013
When I build it with b2.exe toolset=msvc-12.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8
Some targets(chrono thread) is missing. such as libboost_chrono-vc120-mt-1_61.lib libboost_thread-vc120-mt-1_61.lib is not built.
Do you know why this happens?

xiaoxie5002 commented Oct 25, 2016 edited

local microsoft_mpi_sdk_path = "C:\Program Files (x86)\Microsoft SDKs\MPI" ;
local microsoft_mpi_path = "C:\Program Files\Microsoft MPI" ;
if [ GLOB $(microsoft_mpi_sdk_path)\Include : mpi.h ]

Did some guys see \? In windows 7, I think \ is correct.

nouei commented Feb 21, 2017

Thank you so much.

denix56 commented Mar 14, 2017

Could you please add guide for building Boost and PCL using Visual Studio 2017?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment