Ciao a tutti, all'università sto affrontanto il corso di Calcolo Parallelo e Distribuito, davvero molto interessante. Ho scaricato dal sito http://www-unix.mcs.anl.gov/mpi/mpich1/download.html mpich che contiene il simulatore, gli include e le librerie. Nella configurazione del simulatore nessun problema, l'host mi è stato riconosciuto.
Questo però al momento mi è inutile perchè non riesco a compilare utilizzando il wxDec-C++ il sorgente contenente l'inclusione della libreria mpi.h.
Ho copiato le cartelle lib e include dalle cartelle sdk e sdk.gcc alla cartella di dev, aggiungendo tutti i file a quelle già presenti ed inoltre nelle impostazioni del compilatore ho aggiunto le cartelle originarie all'interno della directory del MPich.
Questo è il codice del programma di test:
codice:
#include <mpi.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int rank, size;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);
printf("I am %d of %d\n", rank, size);
fflush(stdout);
MPI_Finalize();
return 0;
}
Questo è l'errore che mi viene riportato:
codice:
[Linker Error] undefined reference to `MPI_Init'
[Linker Error] undefined reference to `MPI_Comm_rank'
[Linker Error] undefined reference to `MPI_Comm_size'
[Linker Error] undefined reference to `MPI_Finalize'
ld returned 1 exit status
Questo è il log di compilazione:
codice:
Compilatore: Default GCC compiler
Esecuzione di g++.exe...
g++.exe "*MY DIRECTORY*\Prova.cpp" -o "*MY DIRECTORY*\Prova.exe" -I"C:\Programmi\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"C:\Programmi\Dev-Cpp\include\c++\3.4.2\backward" -I"C:\Programmi\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Programmi\Dev-Cpp\include\c++\3.4.2" -I"C:\Programmi\Dev-Cpp\include" -I"C:\Programmi\Dev-Cpp\" -I"C:\Programmi\Dev-Cpp\include\common\wx\msw" -I"C:\Programmi\Dev-Cpp\include\common\wx\generic" -I"C:\Programmi\Dev-Cpp\include\common\wx\fl" -I"C:\Programmi\Dev-Cpp\include\common\wx\gizmos" -I"C:\Programmi\Dev-Cpp\include\common\wx\html" -I"C:\Programmi\Dev-Cpp\include\common\wx\mmedia" -I"C:\Programmi\Dev-Cpp\include\common\wx\net" -I"C:\Programmi\Dev-Cpp\include\common\wx\ogl" -I"C:\Programmi\Dev-Cpp\include\common\wx\plot" -I"C:\Programmi\Dev-Cpp\include\common\wx\protocol" -I"C:\Programmi\Dev-Cpp\include\common\wx\stc" -I"C:\Programmi\Dev-Cpp\include\common\wx\svg" -I"C:\Programmi\Dev-Cpp\include\common\wx\xml" -I"C:\Programmi\Dev-Cpp\include\common\wx\xrc" -I"C:\Programmi\Dev-Cpp\include\common\wx" -I"C:\Programmi\Dev-Cpp\include\common" -I"C:\Programmi\MPICH\SDK.gcc\include" -I"C:\Programmi\MPICH\SDK\Include" -L"C:\Programmi\Dev-Cpp\Lib" -L"C:\Programmi\MPICH\SDK\Lib" -L"C:\Programmi\MPICH\SDK.gcc\lib"
C:\DOCUME~1\*USER*\IMPOST~1\Temp/cc4Abaaa.o:Prova.cpp: (.text+0x38) : undefined reference to `MPI_Init'
C:\DOCUME~1\*USER*\IMPOST~1\Temp/cc4Abaaa.o:Prova.cpp: (.text+0x4b) : undefined reference to `MPI_Comm_rank'
C:\DOCUME~1\*USER*\IMPOST~1\Temp/cc4Abaaa.o:Prova.cpp: (.text+0x5e) : undefined reference to `MPI_Comm_size'
C:\DOCUME~1\*USER*\IMPOST~1\Temp/cc4Abaaa.o:Prova.cpp: (.text+0x8d) : undefined reference to `MPI_Finalize'
collect2: ld returned 1 exit status
Esecuzione terminata
Grazie 1000 per l'aiuto