【发布时间】:2014-02-24 06:57:47
【问题描述】:
程序:
#include <stdio.h>
#include <mpi.h>
int main (argc, argv)
int argc;
char *argv[];
{
int rank, size;
MPI_Init (&argc, &argv); /* starts MPI */
MPI_Comm_rank (MPI_COMM_WORLD, &rank); /* get current process id */
MPI_Comm_size (MPI_COMM_WORLD, &size); /* get number of processes */
printf( "Hello world from process %d of %d\n", rank, size );
MPI_Finalize();
return 0;
}
错误:
/usr/lib/gcc/i586-suse-linux/4.4/../../../../i586-suse-linux/bin/ld: cannot find -lopen-rte
collect2: ld returned 1 exit status
编译命令:mpicc hello.c -o ./hello。
我正在尝试构建一个 openSUSE 节点集群。
所以我正在测试 mpich2 程序是否在每个节点上运行。
【问题讨论】:
-
检查这些链接,您的系统似乎配置错误(例如您缺少某些软件包)lam-mpi.org/MailArchives/lam/2010/04/14195.php, lam-mpi.org/MailArchives/lam/2010/04/14196.php
-
这是一个链接器错误;您缺少一个密钥库 (
libopen-rte.so)。 -
k 谢谢...我会解决这个问题.....也在其他节点上 m 收到此错误:mpi.h 没有这样的文件或目录