AMBER Archive (2009)

Subject: Re: Re: [AMBER] Not able to compile pmemd with openmpi in Amber9

From: Kito (kitobhai_at_rediffmail.com)
Date: Wed Nov 25 2009 - 01:50:25 CST


Thanks Jason,

When I changed MATH_DEFINES = -DMKL

to MATH_DEFINES =

it worked and I was able to link the object files.

But on checking library dependencies, I have problem with libguide.so (first line on the output below)

  

$> ldd pmemd

./pmemd: /usr/lib64/libguide.so: no version information available (required by ./pmemd)

        libguide.so => /usr/lib64/libguide.so (0x00002b1a6e4ca000)

        libpthread.so.0 => /lib64/libpthread.so.0 (0x00000032fdc00000)

        libimf.so => /usr/lib64/libimf.so (0x00002b1a6e607000)

        libsvml.so => /usr/lib64/libsvml.so (0x00002b1a6e89f000)

        libmpi_f90.so.0 => /opt/mpi/openmpi/1.3.3/intel/lib/libmpi_f90.so.0 (0x00002b1a6e9e1000)

        libmpi_f77.so.0 => /opt/mpi/openmpi/1.3.3/intel/lib/libmpi_f77.so.0 (0x00002b1a6ebe4000)

        libmpi.so.0 => /opt/mpi/openmpi/1.3.3/intel/lib/libmpi.so.0 (0x00002b1a6ee1c000)

        libopen-rte.so.0 => /opt/mpi/openmpi/1.3.3/intel/lib/libopen-rte.so.0 (0x00002b1a6f0ec000)

        libopen-pal.so.0 => /opt/mpi/openmpi/1.3.3/intel/lib/libopen-pal.so.0 (0x00002b1a6f34c000)

        libdl.so.2 => /lib64/libdl.so.2 (0x00000032fd800000)

        libnsl.so.1 => /lib64/libnsl.so.1 (0x0000003300400000)

        libutil.so.1 => /lib64/libutil.so.1 (0x000000330a600000)

        libm.so.6 => /lib64/libm.so.6 (0x00000032fd400000)

        libc.so.6 => /lib64/libc.so.6 (0x00000032fd000000)

        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x000000330ee00000)

        /lib64/ld-linux-x86-64.so.2 (0x00000032fcc00000)

        libirc.so => /usr/lib64/libirc.so (0x00002b1a6f5e8000)

        libifport.so.5 => /opt/intel/Compiler/11.1/046/lib/intel64/libifport.so.5 (0x00002b1a6f71e000)

        libifcoremt.so.5 => /opt/intel/Compiler/11.1/046/lib/intel64/libifcoremt.so.5 (0x00002b1a6f857000)

        libintlc.so.5 => /opt/intel/Compiler/11.1/046/lib/intel64/libintlc.so.5 (0x00002b1a6fafb000)

Thanks again

Kito

On Wed, 25 Nov 2009 12:34:22 +0530 wrote

>This appears to be an MKL issue. What version of MKL are you using? It

would appear like the MKL libraries you're linking to no longer contain

vd___MATHFUNCTION__ functions/subroutines anymore, so you have to find which

library is missing and link to that one as well. You can try adding

-lmkl_intel_lp64 -lmkl_core and/or -lmkl_sequential to the MATH_LIBS line.

I believe those are the only three libraries that pmemd will need, but this

is for Intel MKL 10 or 11. For older MKL versions, the config file you have

above should work...

I just now tried compiling pmemd9 with the ifort11 compiler and MKL 11. It

failed with the default config.h file (slightly different errors than yours,

but still MKL-related). Adding the three above -lmkl... statements above to

MATH_LIBS fixed the problems.

Again, though, this is dependent on the version of MKL that you're using.

Good luck, and I'd be interested to hear any success/failure (along with

which MKL you have installed :) )

All the best,

Jason

On Wed, Nov 25, 2009 at 1:39 AM, Kito wrote:

> Hi Amber Experts/Users,

>

>

>

> I am having difficulties with pmemd installation

>

> My h/w and s/w configuration is

>

> Linux Enterprise, OpenMPI, AMD x86_64, Intel Compiliers

>

>

>

> My config.h file is

>

>

>

> MATH_DEFINES =

>

> MATH_LIBS =

>

> IFORT_RPATH = /opt/gridengine/lib/lx26-amd64:/usr/lib/perl5/5.8.8

>

> MATH_DEFINES = -DMKL

>

> MATH_LIBS = -L$(MKL_HOME)/lib/em64t -lguide -lpthread

>

> FFT_DEFINES = -DPUBFFT

>

> FFT_INCLUDE =

>

> FFT_LIBS =

>

> NETCDF_HOME =

>

> NETCDF_DEFINES =

>

> NETCDF_MOD =

>

> NETCDF_LIBS =

>

> MPI_HOME = /opt/mpi/openmpi/1.3.3/intel/

>

> MPI_DEFINES = -DMPI -DSLOW_NONBLOCKING_MPI

>

> MPI_INCLUDE = -I$(MPI_HOME)/include

>

> MPI_LIBDIR = $(MPI_HOME)/lib

>

> MPI_LIBS = -L$(MPI_LIBDIR)

>

> DIRFRC_DEFINES = -DDIRFRC_EFS -DDIRFRC_COMTRANS -DDIRFRC_NOVEC

>

> CPP = /lib/cpp

>

> CPPFLAGS = -traditional -P

>

> F90_DEFINES = -DFFTLOADBAL_2PROC

>

> F90 = mpif90

>

> MODULE_SUFFIX = mod

>

> F90FLAGS = -c

>

> F90_OPT_DBG = -g -traceback

>

> F90_OPT_LO = -O0

>

> F90_OPT_MED = -O2

>

> F90_OPT_HI = -axWPT -ip -O3

>

> F90_OPT_DFLT = $(F90_OPT_HI)

>

> CC = mpicc

>

> CFLAGS =

>

> LOAD = mpif90

>

> LOADFLAGS =

>

> LOADLIBS = -limf -lsvml -Wl,-rpath=$(IFORT_RPATH)

>

>

>

> The error I get is

>

>

>

> mpif90 -o pmemd gbl_constants.o gbl_datatypes.o state_info.o file_io_dat.o

> parallel_dat.o mdin_ctrl_dat.o mdin_ewald_dat.o prmtop_dat.o inpcrd_dat.o

> dynamics_dat.o img.o parallel.o pme_direct.o pme_recip.o pme_fft.o fft1d.o

> bspline.o pme_force.o pbc.o nb_pairlist.o cit.o dynamics.o bonds.o angles.o

> dihedrals.o runmd.o loadbal.o shake.o runmin.o constraints.o axis_optimize.o

> gb_ene.o veclib.o gb_force.o timers.o pmemd_lib.o runfiles.o file_io.o

> bintraj.o pmemd_clib.o pmemd.o random.o degcnt.o erfcfun.o nmr_calls.o

> nmr_lib.o get_cmdline.o master_setup.o alltasks_setup.o pme_setup.o

> ene_frc_splines.o nextprmtop_section.o

> -L/opt/intel/Compiler/11.1/046/mkl//lib/em64t -lguide -lpthread

> -L/opt/mpi/openmpi/1.3.3/intel//lib -limf -lsvml

> -Wl,-rpath=/opt/gridengine/lib/lx26-amd64:/usr/lib/perl5/5.8.8

>

> gb_ene.o: In function `gb_ene_mod_mp_gb_ene_':

>

> gb_ene.f90:(.text+0x19de): undefined reference to `vdinvsqrt_'

>

> gb_ene.f90:(.text+0x1c93): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x1cac): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x1fde): undefined reference to `vdln_'

>

> gb_ene.f90:(.text+0x1ff7): undefined reference to `vdln_'

>

> gb_ene.f90:(.text+0x3b98): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x3dd9): undefined reference to `vdexp_'

>

> gb_ene.f90:(.text+0x4254): undefined reference to `vdinvsqrt_'

>

> gb_ene.f90:(.text+0x4289): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x43df): undefined reference to `vdexp_'

>

> gb_ene.f90:(.text+0x43fc): undefined reference to `vdinvsqrt_'

>

> gb_ene.f90:(.text+0x5403): undefined reference to `vdinvsqrt_'

>

> gb_ene.f90:(.text+0x55b1): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x55ca): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x57b2): undefined reference to `vdln_'

>

> gb_ene.o: In function `gb_ene_mod_mp_calc_born_radii_':

>

> gb_ene.f90:(.text+0x678a): undefined reference to `vdinvsqrt_'

>

> gb_ene.f90:(.text+0x6a3f): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x6a58): undefined reference to `vdinv_'

>

> gb_ene.f90:(.text+0x6d8a): undefined reference to `vdln_'

>

> gb_ene.f90:(.text+0x6da3): undefined reference to `vdln_'

>

> make[1]: *** [pmemd] Error 1

>

> make[1]: Leaving directory `/opt/apps/amber/9/intel-mkl/src/pmemd/src'

>

> make: *** [all] Error 2

>

>

>

> Please help... I have gone through the archives and got similar problems

> but their said solution's doesnt seems to help.

>

>

>

> Thanks in advance

>

> Kito

> _______________________________________________

> AMBER mailing list

> AMBER_at_ambermd.org

> http://lists.ambermd.org/mailman/listinfo/amber

>

-- 

---------------------------------------

Jason M. Swails

Quantum Theory Project,

University of Florida

Ph.D. Graduate Student

352-392-4032

_______________________________________________

AMBER mailing list

AMBER_at_ambermd.org

http://lists.ambermd.org/mailman/listinfo/amber

_______________________________________________ AMBER mailing list AMBER_at_ambermd.org http://lists.ambermd.org/mailman/listinfo/amber