Closed s-benavides closed 5 years ago
Hola! Las diferentes bibliotecas MPI te permiten saber que otras bibliotecas y PATHs se necesitan para compilar. Escribiendo en una terminal lo siguiente:
mpif90 -show
podés ver que compilador y opciones se necesitan en tu sistema y para tu versión de OpenMPI. Como ejemplo, en mi máquina este comando devueve lo siguiente:
gfortran -I/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/include -pthread -I/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -Wl,-rpath -Wl,/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -Wl,--enable-new-dtags -L/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi
Podés copiar el resultado que obtengas en tu máquina al Makefile.in (en el bloque de variables que siguen a "# OPENMPI (OPEN)". Todas las opciones que comienzan con "-I" van en "MPIINC_OPEN =", todas las que comienzan con "-L" van en "MPILIB_OPEN =", y todas las demás (dejando fuera el compilador gfortran) van en "MPILD_OPEN =". Con estos cambios GHOST debería compilar sin problemas usando cualquier versión de OpenMPI.
Hola! Las diferentes bibliotecas MPI te permiten saber que otras bibliotecas y PATHs se necesitan para compilar. Escribiendo en una terminal lo siguiente:
mpif90 -show
podés ver que compilador y opciones se necesitan en tu sistema y para tu versión de OpenMPI. Como ejemplo, en mi máquina este comando devueve lo siguiente:
gfortran -I/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/include -pthread -I/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -Wl,-rpath -Wl,/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -Wl,--enable-new-dtags -L/opt/ohpc/pub/mpi/openmpi3-gnu7/3.0.0/lib -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi
Podés copiar el resultado que obtengas en tu máquina al Makefile.in (en el bloque de variables que siguen a "# OPENMPI (OPEN)". Todas las opciones que comienzan con "-I" van en "MPIINC_OPEN =", todas las que comienzan con "-L" van en "MPILIB_OPEN =", y todas las demás (dejando fuera el compilador gfortran) van en "MPILD_OPEN =". Con estos cambios GHOST debería compilar sin problemas usando cualquier versión de OpenMPI.
Perfecto! Gracias por tu ayuda!
Hola!
Estoy tratando de instalar/compile GHOST en un cluster de mi universidad. En el cluster tienen Open MPI 1.8.8 o 2.0.3 y no 1.10.0. No pense que iba ser un problema pero, por lo que veo, estas versiones de MPI no me dejan poner:
-Wl,-commons,use_dylibs -lmpi_usempif08 -lmpi_usempi_ignore_tkr
en el MPILD_OPEN dentro de Makefile.in.
La cosa es que no se mucho que hacen esas libraries osea que no se si puedo simplemente sacar esos commands. Que me recomiendan hacer?
Gracias! Santi