2014-10-01 42 views
1

我正在尝试为MS-MPI构建boostmpi库。 我跟着boost mpi官方入门文档但卡住了。当打电话给bjam.exe --with-mpi时,它告诉我它会跳过mpi。如何使用Visual Studio 2012为MS-MPI构建boost mpi

所以我加了MS-MPI发射的路径,我user-config.jam

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

由于升压手册上的指示。

然而这在试图构建时会导致argument error

bjam显然能够找到mpiexec可执行文件,但不知道正确的参数。从boost文档中我不清楚该怎么做。

+0

'mpiexec.exe'是MS-MPI中的MPI启动程序,而不是编译器封装。 – 2014-10-02 08:26:30

+0

谢谢。但它是正确的,那么boost mpi是直接使用这个可执行文件吗? – ifschleife 2014-10-02 08:40:43

+1

它不应该被图书馆使用,它不是MPI ** development **环境的一部分。 'mpiexec.exe'用于启动MPI二进制文件,一旦它们被编译并链接到可执行文件中。编译器包装通常具有诸如“mpicc”,“mpiC++”,“mpif90”等名称。某些MPI库根本不提供包装,并期望您手动添加相关的包含路径和库。 IIRC,MS-MPI就是其中之一。 – 2014-10-02 08:52:15

回答

1

下面是关于如何使用Visual Studio 2012Windows 7上构建boost mpi版本1.55的完整描述。MS-MPI

  • http://msdn.microsoft.com/en-us/library/bb524831%28v=vs.85%29.aspx 获取MS-MPI再发行组件包,并在标准位置
  • 安装解压boost 1.55来源
  • 运行bootstrap.batVisual Studio 2012命令提示符
  • 以下行添加到build\v2\user-config.jam

    using mpi;

  • 变化build\v2\tools\mpi.jam

    线249以下行:中cluster_pack_path_relative的值更改为MS-MPI安装目录。就像这样:local cluster_pack_path_native = "C:\\Program Files\\Microsoft MPI" ;

    行251:更改... \\Include : mpi.h到...... \\Inc : mpi.h

    行260:更改... /Include到...... /Inc

  • 运行bjam.exe --with-mpi --toolchain=msvc-11.0 这应该现在编译

要创建构建boost mpi例如Visual Studio解决方案,新建boost mpi和必须将库添加到解决方案以及MS-MPI安装路径中的msmpi.lib

+0

路径似乎又改变了,请参考这篇文章的验证版本。 http://stackoverflow.com/a/32635378/1953100 – William 2015-09-17 16:28:31

相关问题