我尝试使用cygwin环境(控制台)运行一个C语言MPI程序。编译过程工作正常,但当我试图运行输出程序时得到一个错误。我现在配置的是:
我用的是cygwin环境,下面是安装的包:
另外,我下载并添加了mingw到用户路径:
正如你所看到的,cygwin bin也被添加到路径中
但是关于代码-一段简单的代码
#include "mpi.h"
#include <stdio.h>
int main( int argc, char *argv[] )
{
int rank, size;
MPI_Init( &argc, &argv );
MPI_Comm_size( MPI_COMM_WORLD, &size );
MPI_Comm_rank( MPI_COMM_WORLD, &rank );
printf( "Hello World! I am %d of %d\n", rank, size );
MPI_Finalize( );
return 0;
}
在cygwin控制台中,编译
mpicc file.c -o file
工作正常,结束时没有任何错误。但是当我试着用
mpirun -np 2 ./file
错误是:
[DESKTOP-3F9P53V:01959] [[INVALID],INVALID] FORCE-TERMINATE AT Not found:-13 - error /pub/devel/openmpi/v4.0/openmpi-4.1.5-1.x86_64/src/openmpi-4.1.5/orte/mca/plm/rsh/plm_rsh_component.c(335)
好像少了点什么,但我不知道是什么。我应该下载哪些其他软件包?我重新安装了openmpi包,但没有任何变化。或者问题来自于一些cygwin软件包的版本?(另外,作为一个提示,软件包的源代码是mirrors.kernel.org)
1条答案
按热度按时间z9smfwbn1#
预期的行为是
你的代码在我的系统上也能用在你的道路上不需要明。要清理PATH并在干净的Cygwin环境中测试程序,您可以将其运行为
您还可以使用检查包是否正确安装,以及是否缺少任何内容