在MSYS2-MinGW中安装OpenMPI或MPICH2

问题描述 投票:1回答:1

我想在MSYS-MinGW环境和编译器中使用MPI的任何FLOSS实现(即OpenMPI或MPICH2)。请考虑我知道您可以通过

找到的Microsoft MPI SDKmingw64/mingw-w64-x86_64-msmpi
pacman -Ss msmpi

并安装

pacman -S msmpi

但是我想知道我是否可以安装任何开源实现。我尝试搜索

pacman -Ss mpi

但是可手动检查的结果太多,openmpimpich2搜索查询不会返回任何结果。所以我的问题是:

  • MinGW或MSYS2附带的MPI的FLOSS实现中的任何一个
  • 如果没有人怎么安装它们?

P.S.1。 Cygwin确实具有与some openmpi相关的程序包,所以令人奇怪的是,为什么MSYS2(AFIK是Cygwin的分支)没有!

P.S.2。 MPICH2二进制文件可用here,但它们远远落后于其他平台的最新版本。真是可悲!

P.S.3。令人惊讶的是Microsoft's MPI implementation实际上是开源的!它似乎是MPICH的分支或至少与其兼容。

mpi mingw openmpi msys2 mpich
1个回答
1
投票

MSYS2的主要目标是为您提供构建native Windows应用程序的环境。

因此,很自然地,它将绑定导出到本机Microsoft MPI实现,而没有提供依赖于完整POSIX层的其他MPI实现(例如OpenMPI或MPICH)的端口。

来自How does MSYS2 differ from Cygwin

MSYS2尝试提供用于构建本机Windows软件的环境。 MSYS2提供了大量包含此类软件的软件包以及用于其开发的库。由于该软件的很大一部分使用与unix世界紧密耦合的GNU构建工具,因此该环境也与POSIX兼容,并且实际上基于Cygwin。

Cygwin尝试将兼容POSIX的环境引入Windows,以便大多数在unices上运行的软件都可以在Cygwin上构建和运行,而无需进行任何重大修改。 Cygwin提供了大量包含此类软件的软件包以及用于其开发的库。

该页面上有更多有关MSYS2如何利用Cygwin和POSIX兼容层的详细信息,主要是提供build环境所需的工具端口,主要是为了支持类似POSIX的构建系统(例如autoconf,make ,介子等),同时主要旨在公开这些工具以支持构建Windows本机二进制文件和移植应用程序以在Windows上本机运行。

© www.soinside.com 2019 - 2024. All rights reserved.