Hey Yes, I am from RWTH Aachen, doing Hybrid Parallelization of some code on HPC.
These are the outputs from the command line: $ mpif90 --showme gfortran -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib -lmpi_f90 -lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl $ mpif77 --showme gfortran -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib -lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl About the make file, I pass all of these parameters as FFLAGS!!! It is a lot, I know. :D gfortran -c -I./ -Isolve/ -Inonlinear/ -Iforward/ -Isimul/ -Isimul/gs/ -Isimul/sgsim/ -Ig_taf/ -Iad_taf/ -Iinverse/ -Iinverse/g_taf/ -Iinverse/ad_taf/ -Initsol/ -Iprops/bas/ -Iuser/none/ -m64 -fno-second-underscore -march=k8 -O3 -ffast-math -funroll-all-loops -fprefetch-loop-arrays -mno-ieee-fp -DG95 -DCLopt -fdefault-integer-8 -frepack-arrays -ftree-vectorize -funit-at-a-time -fopenmp -DPROPS_bas -DSIMUL_sgsim -DUSER_none -DfOMP -DQDDOT -Dhead_base -DSTBAY -DstdFW -Dsetg_taf -DnoHDF -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -Wl,-rpath,/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -L/opt/MPI/openmpi-1.5.3/linux/gcc/lib -lmpi_f90 -lmpi_f77 -lmpi -ldl -Wl,--export-dynamic -lnsl -lutil -lm -ldl -x f95-cpp-input simul/simul_wrapper.f90 -o simul/simul_wrapper.o -I/opt/MPI/openmpi-1.5.3/linux/gcc/include -fexceptions -pthread -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib -I/opt/MPI/openmpi-1.5.3/linux/gcc/lib Regards, Ali RWTH Aachen ________________________________ From: "Iliev, Hristo" <il...@rz.rwth-aachen.de> To: Mohamad Ali Rostami <ma.rost...@yahoo.com>; Open MPI Users <us...@open-mpi.org> Sent: Wednesday, June 27, 2012 2:59 PM Subject: RE: [OMPI users] MPI Problem Hi, Could you please compare the output from “mpif77/mpif90 -showme” when executed from the command line and from inside the Makefile? Could you also check that the argument to MPI_INIT is a normal INTEGER and is not getting some funny KIND or preprocessor treatment? Regards, -- Hristo Iliev, Ph.D. -- High Performance Computing RWTH Aachen University, Center for Computing and Communication From:users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf Of Mohamad Ali Rostami Sent: Wednesday, June 27, 2012 9:36 AM To: Jeff Squyres Cc: Open MPI Users Subject: Re: [OMPI users] MPI Problem Something strange, By adding all the libraries which I found from mpif90/mpif77 --showme, Fortran 77 version worked finally, but Fortran 90 version still has the problem. Error: There is no specific subroutine for the generic 'mpi_init' at (1) any idea?? ________________________________ From:Jeff Squyres <jsquy...@cisco.com> To: Mohamad Ali Rostami <ma.rost...@yahoo.com> Cc: Open MPI Users <us...@open-mpi.org> Sent: Monday, June 25, 2012 10:22 PM Subject: Re: [OMPI users] MPI Problem On Jun 25, 2012, at 3:59 PM, Mohamad Ali Rostami wrote: > > mpif90 my_application.f90 -o my_application > > Yes, as I told you out of make file, it works. > The problem is something strange in the make file. I'm sorry; I must have mis-parsed your issue, then. So just to make sure I understand: shell$ mpif90 my_application.f90 -o my_application Works fine, but: shell$ make ...something that eventually invokes "mpif90 my_application.f90 -o my_application" doesn't work. Right? If you're invoking the exact same command in both cases (interactive shell and makefile), the *usual* cause of this kind of problem is that the "mpif90" in your Makefile is picking up a different mpif90 than the one that is picked up by your shell. Meaning: your PATH has been reset in the sub-process where "make" is executed, and so when make forks off "mpif90", it finds a different one than the one you execute interactively in the shell. Check what your path is and/or exactly which mpif90 is getting invoked by your Makefile. -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/