2012-02-24 19 views
1

openmpiをC:\ Program Files \ OpenMPI_v1.5.4-win32 \にインストールし、グラフ並列ライブラリを生成するためにboostをコンパイルします。しかし、次のエラーを得た:msvc 2010でboost MPIを構築する際のエラー

The system cannot find the path specified. 
The system cannot find the path specified. 
The system cannot find the path specified. 
The system cannot find the path specified. 
MPI auto-detection failed: unknown wrapper compiler C:/Program Files/OpenMPI_v1. 
5.4-win32/bin/mpic++.exe 
Please report this error to the Boost mailing list: http://www.boost.org 
You will need to manually configure MPI support. 
MPI launcher: mpirun -np 

私は、Visual Studio 2010のコマンドプロンプトで実行したとき:

b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=32 stage --debug-configuration 

私はboost_1_48_0の\ツールでMPIの設定を追加しました\ \ V2 \ユーザー-config.jamを構築以下のように:

using mpi : "C:/Program Files/OpenMPI_v1.5.4-win32/bin/mpic++.exe" ; 

私はこれと同様の質問が以前に尋ねたが、何の答えを得られていないと信じて:

01あなたが気にしない場合は

答えて

2

、あなたは次にあなたがmpi.jamファイルにいくつかの調整を行う必要があり、ここでhttps://www.microsoft.com/en-us/download/details.aspx?id=47259

からMS MPIのV6、downdloadを使用することができます。古いバージョンのブーストの場合、mpi.jamはtools/build/v2/tools /フォルダーにあり、新しいバージョンのブーストの場合はtools/build/src/tools /にあります。

ライン248周りには、次の調整が必要です。 MSはAPIをHPCと分離するため、

local win_ms_mpi_sdk = "C:\\Program Files (x86)\\Microsoft SDKs\\MPI" ; 
local win_ms_mpi = "C:\\Program Files\\Microsoft MPI" ; 

#local cluster_pack_path_native = "C:\\Program Files\\Microsoft Compute Cluster Pack" ; 
#local cluster_pack_path = [ path.make $(cluster_pack_path_native) ] ; 
if [ GLOB $(win_ms_mpi_sdk)\\Include : mpi.h ] 
{ 
    if $(.debug-configuration) 
    { 
    ECHO "Found Microsoft Compute Cluster Pack: $(cluster_pack_path_native)" ; 
    } 

    # Pick up either the 32-bit or 64-bit library, depending on which address 
    # model the user has selected. Default to 32-bit. 
    options = <include>$(win_ms_mpi_sdk)/Include 
      <address-model>64:<library-path>$(win_ms_mpi_sdk)/Lib/x64 
      <library-path>$(win_ms_mpi_sdk)/Lib/x86 
      <find-static-library>msmpi 
      <toolset>msvc:<define>_SECURE_SCL=0 
      ; 

    # Setup the "mpirun" equivalent (mpiexec) 
    .mpirun = "\"$(win_ms_mpi)\\Bin\\mpiexec.exe"\" ; 
    .mpirun_flags = -n ; 
} 
1

同じ問題が発生し、Microsoft MPIで解決しました。 1.61.0とMicrosoft MPI v7.1(https://www.microsoft.com/en-us/download/details.aspx?id=52981で利用可能)を使用します。 SDKとMsMpiセットアップをダウンロードしてインストールします。

ウィリアムがtools/build/src/toolsにあるmpi.jamファイルと同じ変更を加えました。

私はあなたのユーザーディレクトリに配置する必要があり、ユーザーconfig.jamに

using mpi ; 

コマンドを追加しました。それ以外の場合はtools/build/srcに移動し、そこにあるuser-config.jamファイルをユーザディレクトリに移動します。追加中

using mpi : C:\\Program Files\\Microsoft MPI\\Bin\\mpiexec.exe ; 

複数のエラーが発生します。私は空白なしでパス内のファイルを見つけた場合

using mpi : C:\\MicrosoftMPI\\Bin\\mpiexec.exe ; 

がmpi.jamファイルが既に使用されていることをエラーレポートにつながるようにまず第一に、空白は、第二.jamファイルのファイルに許可されていません別のプロセスによって。パスにqotationマークを付けることは役に立ちません。しかし、それは追加なしでusing mpi;ステートメントと一緒に働いた。

パス環境変数にMPI SDKインクルード、Lib、およびMPI Binディレクトリが表示されていることを確認してください。

次のステップは、boost.MPIを構築することです。ブーストルートディレクトリでコマンドプロンプトを開き、必要なパラメータと--with-mpiでbjamを起動します。 variant = debugまたはvariant = releaseフラグを指定することに注意してください。それ以外の場合はネーム・キャッシュ・エラーが発生します。 (詳細はhttp://lists.boost.org/boost-build/2009/12/22854.phpを参照してください)。

それは私のためにそれを解決しました。

関連する問題