正在尝试构建Boost MPI,但未创建lib文件。什么';发生什么事了?

正在尝试构建Boost MPI,但未创建lib文件。什么';发生什么事了?,boost,build,configure,boost-mpi,Boost,Build,Configure,Boost Mpi,我正在尝试使用BoostMPI运行一个程序,但问题是我没有.lib。因此,我尝试按照下面的说明创建一个 说明书上说“对于许多使用LAM/MPI、MPICH或OpenMPI的用户来说,配置几乎是自动的”,我用C:\编写了OpenMPI,但我没有用它做更多的事情。我们需要对它做些什么吗?我还把自己的MPICH2放在了程序文件中,也没有用它做更多的事情。在这一点上的指示是我很不确定我们到底要做什么 除此之外,指令中还有一句话:“如果您的主目录中还没有user-config.jam文件,请将tools/

我正在尝试使用BoostMPI运行一个程序,但问题是我没有.lib。因此,我尝试按照下面的说明创建一个

说明书上说“对于许多使用LAM/MPI、MPICH或OpenMPI的用户来说,配置几乎是自动的”,我用C:\编写了OpenMPI,但我没有用它做更多的事情。我们需要对它做些什么吗?我还把自己的MPICH2放在了程序文件中,也没有用它做更多的事情。在这一点上的指示是我很不确定我们到底要做什么

除此之外,指令中还有一句话:“如果您的主目录中还没有user-config.jam文件,请将tools/build/v2/user-config.jam复制到那里。”。我在C:\boost\u 1\u 43\u 0>中将自己的“user config.jam”和“using mpi;”一起放入文件中

接下来,这就是我所做的:bjam——使用mpi

C:\boost_1_43_0>bjam --with-mpi
WARNING: No python installation configured and autoconfiguration
         failed.  See http://www.boost.org/libs/python/doc/building.html
         for configuration instructions or pass --without-python to
         suppress this message and silently skip all Boost.Python targets

Building the Boost C++ Libraries.


warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
warning: Unable to construct ./stage-unversioned
warning: Unable to construct ./stage-unversioned

Component configuration:

    - date_time                : not building
    - filesystem               : not building
    - graph                    : not building
    - graph_parallel           : not building
    - iostreams                : not building
    - math                     : not building
    - mpi                      : building
    - program_options          : not building
    - python                   : not building
    - random                   : not building
    - regex                    : not building
    - serialization            : not building
    - signals                  : not building
    - system                   : not building
    - test                     : not building
    - thread                   : not building
    - wave                     : not building

...found 1 target...


The Boost C++ Libraries were successfully built!

The following directory should be added to compiler include paths:

    C:\boost_1_43_0

The following directory should be added to linker library paths:

    C:\boost_1_43_0\stage\lib


C:\boost_1_43_0>
我看到C:\boost_1_43_0\stage\lib中有很多lib,但我根本看不到libboost_mpi-vc100-mt-1_43.lib或libboost_mpi-vc100-mt-gd-1_43.lib的踪迹。这些是链接mpi应用程序所需的库


如果没有构建库,可能会出现什么问题?

我怀疑它只是没有读取您的用户config.jam。。。当生成引用并搜索user-config.jam时,它会在%HOME%位置执行此操作。不在Boost源的根目录中,也不在当前目录中。但是您可以让它使用一个特定的user-config.jam文件,并带有一个选项:
bjam--user-config=user-config.jam…
。它将只在当前目录中查找它。也可以指定文件的完整路径。您应该阅读mpi.jam工具文件()中的注释,因为它解释了在哪些条件下将自动设置mpi工具。特别是关于在路径中使用
mpic++
的说明。

我使用以下命令使用mpi构建了boost 1.55: ./bjam link=shared--prefix=/software/boost_1.55安装

vim工具/build/v2/user-config.jam

-->>在user-config.jam的末尾“使用mpi;”(不带引号)

./b2链接=共享--前缀=/software/boost_1.55安装

如果我提供了mpi,我也会遇到同样的问题,因此我就这样构建了它