Heute habe ich versucht, die klassische MPI "Hallo Welt" ProgrammCompilation von MPI "Hallo Welt" nicht
#include <stdio.h>
#include <mpi.h>
int main(int argc, char** argv)
{
MPI_Init(&argc, &argv);
int rank;
int size;
MPI_Comm_rank(MPI_COMM_WORLD,&rank);
MPI_Comm_size(MPI_COMM_WORLD,&size);
printf("I am rank %d of %d\n", rank, size);
MPI_Finalize();
return 0;
}
Um zu kompilieren zu tun so installiert ich openmpi, lam, lam-devel (für mpicc). Ich habe versucht, der Antwort in this old thread adressing this problem, die zu einer Installation von automake, autoconf, libtool und von here Ich kam auch Corutils installieren folgen. Leider bekomme ich immer noch die folgende Fehlermeldung, wenn Sie den obigen Code gibt
mpicc hello.c -o hello
gcc: error: libtool:: Datei oder Verzeichnis nicht gefunden
gcc: error: link:: Datei oder Verzeichnis nicht gefunden
mpicc: No such file or directory
Anfordern des Compiler-Version zu kompilieren versuchen
mpicc --version
gcc (SUSE Linux) 4.8.5
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
was sagt 'was mpicc'? was ist mit 'mpicc-show hallo_c.c'? Beachten Sie, dass Sie 'LAM'' mpicc' nicht verwenden können und erwarten Sie, 'Open MPI' zu verwenden. Müssen Sie 'openmpi-devel' installieren? –
@GillesGouaillardet 'was mpicc' gibt'/usr/bin/mpicc', während 'mpicc-showme hello.c' gibt' gcc -pthread hallo.c libtool: link: -pthread -L/usr/lib64 -lammmpio -llamf77mpi -lmpi -llam -lutil -ldl ' – PascExchange
so verwenden Sie' mpicc' für LAM-MPI (die jetzt veraltet ist). Sie würden lieber (installieren und) 'mpicc' für Open MPI verwenden. aber wenn du LAM-MPI benutzen willst, installiere einfach 'libtool' und du solltest in Ordnung sein. –