프로그램 :오류 오픈 수세에 C에서 MPI에 안녕하세요 세계 프로그램을 컴파일하는 동안
#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;
}
ERROR : 컴파일을위한
/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 프로그램이 실행되는지 테스트하고 있습니다.
이 링크를 확인하면 시스템이 잘못 구성되어있는 것 같습니다 (예 : 일부 패키지가 누락되었습니다) http://www.lam-mpi.org/MailArchives/lam/2010/04/14195.php, http : // www .lam-mpi.org/MailArchives/lam/2010/04/14196.php – Oz123
이것은 링커 오류입니다. 당신은 핵심 라이브러리 (''libopen-rte.so'')가 없습니다. –
k 감사합니다 ... 나는 .....이 오류를 얻는 다른 노드에서도 수정하겠다 : mpi.h 그런 파일이나 디렉토리가 없다. – user3136546