Re: [AMBER] PMEMD installation with gfortran

From: Senthil Natesan <sen.natesan.yahoo.com>
Date: Tue, 11 May 2010 18:38:05 -0700 (PDT)

Thanks Jason. I compiled Amber10 just few months back and applied all bugfixes that time. (I tried again today and it skipped all patches).
***********************************
# mpif90 -show
ln -s /usr/mpi/gcc/mvapich-1.1.0/include/mpif.h mpif.h
gfortran -fPIC -fPIC -L/usr/lib64 -Wall -Wl,-rpath-link -Wl,/usr/mpi/gcc/mvapich-1.1.0/lib/shared -L/usr/mpi/gcc/mvapich-1.1.0/lib/shared -L/usr/mpi/gcc/mvapich-1.1.0/lib -lmpichf90nc -lmpichfarg -lmpich -L/usr/lib64 -libverbs -libumad -libcommon -lpthread -Wall -lpthread -lrt
rm -f mpif.h
************************************
so it is picking up the right compiler. Good news is that we narrowed down to just one error now.
**************************************
[tripos.craycx1 pmemd]$ make install
cd src && make install
make[1]: Entering directory `/home/tripos/amber10_install/amber10/src/pmemd/src'
/lib/cpp -traditional -P -DPUBFFT -DMPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC gbl_constants.fpp gbl_constants.f90
mpif90 -c -O3 gbl_constants.f90
/lib/cpp -traditional -P -DPUBFFT -DMPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC gbl_datatypes.fpp gbl_datatypes.f90
mpif90 -c -O3 gbl_datatypes.f90
/lib/cpp -traditional -P -DPUBFFT -DMPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC state_info.fpp state_info.f90
mpif90 -c -O3 state_info.f90
/lib/cpp -traditional -P -DPUBFFT -DMPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC file_io_dat.fpp file_io_dat.f90
mpif90 -c -O3 file_io_dat.f90
/lib/cpp -traditional -P -DPUBFFT -DMPI -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC pmemd_lib.fpp pmemd_lib.f90
pmemd_lib.fpp:40: error: mpif.h: No such file or directory
make[1]: *** [pmemd_lib.o] Error 1
make[1]: Leaving directory `/home/tripos/amber10_install/amber10/src/pmemd/src'
make: *** [install] Error 2
**************************************************

$MPI_HOME/bin is very much in the path(please see the out put for mpif90 -show above).
any suggestions?

thanks in advance..

Senthil






Hello,

First thing to always check:

all bugfixes have been downloaded and applied. Then try recompiling (but
make clean before every fresh try!). If these don't work, see my advice
below:

I would probably opt for using the compiler wrappers (as long as you know
they've been properly installed with your MPI). Doing this, you can get rid
of everything in front of MPI_INCLUDE and MPI_LIBS (since mpif90 will take
care of that for you).

Then, change F90 = gfortran to F90 = mpif90 and LOAD = gfortran to LOAD =
mpif90 . See the comments below for clarification:

On Tue, May 11, 2010 at 6:13 PM, Senthil Natesan <sen.natesan.yahoo.com>wrote:

> Dear Amber Users,
>
> I am installing PMEMD (Amber 10) on RHEL 5.3 (x86_64) using gfortran and
> mvapichand got some errors. I am displaying my config.h file here and
> please see the attachment for error output.
>
> config.h:
> -----------------------------
> MATH_DEFINES =
> MATH_LIBS =
> FFT_DEFINES = -DPUBFFT
> FFT_INCLUDE =
> FFT_LIBS =
> NETCDF_HOME =
> NETCDF_DEFINES =
> NETCDF_MOD =
> NETCDF_LIBS =
> MPI_HOME = /usr/mpi/gcc/mvapich-1.1.0
> MPI_LIBDIR2 = /usr/mpi/gcc/mvapich-1.1.0/lib/shared
> MPI_DEFINES = -DMPI
> MPI_INCLUDE = -I$(MPI_HOME)/include
>

change to

MPI_INCLUDE =


> MPI_LIBDIR = $(MPI_HOME)/lib
> MPI_LIBS = -L$(MPI_LIBDIR) -lmpich -L$(MPI_LIBDIR2) -lmtl_common -lvapi
> -lmosal -lmpga -lpthread
>

change to

MPI_LIBS =


> DIRFRC_DEFINES = -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC
> CPP = /lib/cpp
> CPPFLAGS = -traditional -P
> F90_DEFINES = -DFFTLOADBAL_2PROC
>
> F90 = gfortran
>

change to

F90 = mpif90


> MODULE_SUFFIX = mod
> F90FLAGS = -c
> F90_OPT_DBG = -g -ftrace=full
> F90_OPT_LO = -O0
> F90_OPT_MED = -O2
> F90_OPT_HI = -O3
> F90_OPT_DFLT = $(F90_OPT_HI)
> CC = gcc
> CFLAGS =
>
> LOAD = gfortran
>

change to

LOAD = mpif90


> LOADFLAGS =
> LOADLIBS =
> -------------------------------------------------
>
> Any suggestions would be very helpful. Thanks,
>
> Senthil Natesan
>

However, a simple check to make sure that mpif90 is invoking the correct
compiler is:

mpif90 -show

This should show you the include directories and library directories that
it's providing as well as the specific libraries it's using.

Hope this helps,
Jason

-- 
Jason M. Swails
Quantum Theory Project,
University of Florida
Ph.D. Graduate Student
352-392-4032
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
      
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Tue May 11 2010 - 19:00:03 PDT
Custom Search