Open MPI "Hallo, Welt!" kompiliert nicht

8

Hier ist ein einfaches MPI "Hallo, Welt!" Programm.

%Vor%

Es scheint jedoch nicht zu kompilieren:

%Vor%

Ich habe viel gegooglet, Mailinglisten gesehen, Tausende von ihnen. Sie sagen, dass libmpi_cxx nicht verlinkt. Aber es ist in den Compiler-Flags.

Hier ist --showme data:

%Vor%

Mein Compiler ist g ++.

    
efpies 25.12.2012, 06:02
quelle

3 Antworten

8

Platzieren Sie einfach die mpi.h Header-Datei über alle Header-Dateien manchmal verursacht dies das Kompilieren von

Ich bin mir nicht sicher, wie Sie Ihren Code ausführen. Kompilieren

%Vor%

Ausführung

%Vor%     
DOOM 25.12.2012 09:19
quelle
1

Es ist auch viel einfacher und flexibler, openmpi- und mpi-Programme in einer "Eclipse for Parallel Application Developers" IDE zu kompilieren.

Ссылка

    
user1436187 25.12.2012 09:41
quelle
1

Einige Anmerkungen:

  1. Beachten Sie, dass Open MPI 1.5 alt ist. Bitte upgraden Sie auf die neueste Version in der Open MPI 1.6.x-Reihe (derzeit 1.6.3), beachten Sie jedoch, dass die www.open-mpi.org-Website derzeit einer geplanten Jahresendpflege unterzogen wird und nicht mehr zurück sein wird bis heute, Donnerstag, 28. Dezember 2012).

  2. Ich bin neugierig: Warum kompilieren Sie ein C-Programm mit MPIC ++? Sie brauchen nur mpicc - den C MPI Wrapper Compiler. Das würde Ihr Problem definitiv vermeiden. Wenn Sie jedoch dieses kleine C Hello-Weltprogramm als ein einfaches Beispiel verwenden und Ihr eigentliches Ziel darin besteht, ein C ++ - MPI-Programm zu kompilieren, dann ist mpic ++ der richtige Wrapper (sogar mit einem einfachen C-Programm). Wenn das der Fall ist, dann haben Sie eine Art Inkompatibilität / Fehlkonfiguration zwischen Ihrem C ++ - Compiler und dem C ++ - Compiler, mit dem Open MPI kompiliert / installiert wurde.

  3. Wenn Sie Ihre Ausgabe von mpic ++ --showme betrachten, sieht es so aus, als hätten Sie eine Art Paketverteilung von Open MPI - R wird z. B. nicht standardmäßig in die Flags eingefügt. Woher hast du diese Open MPI-Installation? Es ist durchaus möglich, dass es mit Ihrer g ++ - Installation nicht (vollständig) kompatibel ist (z. B. wenn es mit einer anderen Version von g ++ kompiliert wurde).

  4. Das heißt, Ihre mpic ++ --showme-Ausgabe ist auch seltsam, da sie -lmpi_cxx am Ende der Zeile auflistet. Es sollte zu links von -lmpi sein, nicht zu rechts davon. Ich werde nicht zeigen, wie Ihre Installation so borked wurde, aber das ist eine andere mögliche Ursache.

Also zusammenfassend lautet meine Antwort:

  1. Bitte versuchen Sie, Open MPI zu aktualisieren, und prüfen Sie, ob das Problem behoben ist.
  2. Überprüfen Sie, ob Ihre Installation von Open MPI mit Ihrem System kompatibel ist.
Jeff Squyres 27.12.2012 21:03
quelle

Tags und Links