Page 1 of 1

Compilation problem with VASP-4.6.21 and intel compiler Version 10.1

Posted: Thu May 29, 2008 1:41 pm
by jigar_halani
Dear All,

I have problem, while compiling VASP-4.6.21 with Intel compilers. My configuration is:

Hardware: Dell-1950 servers with 2*Quad core Intel CPU, 16GB of RAM.

OS: Redhat Enterprise Linux 4 update 5 ES

Software: Intel Compiler (version 10.1.015,Package ID: l_fc_p_10.1.015), Intel MKL (version 10.0.2.018), Intel(R) MPI Library for Linux Version 3.1
(All the path is set in the /etc/bashrc)

FFTW wrapper library:
$cd /opt/intel/mkl/10.0.2.018/interfaces/fftw3xf
$make libem64t compiler=intel

VASP-lib installation steps:

tar -zxvf vasp.new.tar
cd vasp.4.lib
cp makefile.linux_ifc_P4 makefile.intel

I have changed only one line in the "makefile.intel": FC=ifort
$make -f makefile.intel --- and it says:
make: `libdmy.a' is up to date.

VASP installation steps:

cd ../vasp.4.6.21/
cp makefile.linux_ifc_P4 makefile.intel

And the makefile.intel looks as follow:

.SUFFIXES: .inc .f .f90 .F
SUFFIX=.f90
FC=ifort
FCL=$(FC)

CPP_ = ./preprocess <$*.F | /usr/bin/cpp -P -C -traditional >$*$(SUFFIX)

CPP = $(CPP_) -DHOST=\"LinuxIFC\" \
-Dkind8 -DNGXhalf -DCACHE_SIZE=12000 -DPGF90 -Davoidalloc \

FFLAGS = -I/opt/intel/mkl/10.0.2.018/include/fftw -FR -lowercase

OFLAG=-O3 -xW -tpp7

OFLAG_HIGH = $(OFLAG)
OBJ_HIGH =

OBJ_NOOPT =
DEBUG = -FR -O0
INLINE = $(OFLAG)

BLAS=-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread

LAPACK=-L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread

LIB = -L../vasp.4.lib -ldmy \
../vasp.4.lib/linpack_double.o $(LAPACK) \
$(BLAS)
LINK =

FFT3D= fftmpiw.o fftmpi_map.o fft3dlib.o /opt/intel/mkl/10.0.2.018/lib/em64t/libfftw3xf_intel.a

# MPI section

FC=mpiifort
FCL=$(FC)

CPP = $(CPP_) -DMPI -DHOST=\"LinuxIFC\" -DIFC \
-Dkind8 -DNGZhalf -DCACHE_SIZE=4000 -DPGF90 -Davoidalloc \
-DMPI_BLOCK=500 -DscaLAPACK

SCA=/opt/intel/mkl/10.0.2.018/lib/em64t/libmkl_scalapack_lp64.a

LIB = -L../vasp.4.lib -ldmy \
../vasp.4.lib/linpack_double.o $(LAPACK) \
$(SCA) $(BLAS)

FFT3D= fftmpiw.o fftmpi_map.o fft3dlib.o /opt/intel/mkl/10.0.2.018/lib/em64t/libfftw3xf_intel.a

BASIC= symmetry.o symlib.o lattlib.o random.o

SOURCE= base.o mpi.o smart_allocate.o xml.o \
constant.o jacobi.o main_mpi.o scala.o \
asa.o lattice.o poscar.o ini.o setex.o radial.o \
pseudo.o mgrid.o mkpoints.o wave.o wave_mpi.o $(BASIC) \
nonl.o nonlr.o dfast.o choleski2.o \
mix.o charge.o xcgrad.o xcspin.o potex1.o potex2.o \
metagga.o constrmag.o pot.o cl_shift.o force.o dos.o elf.o \
tet.o hamil.o steep.o \
chain.o dyna.o relativistic.o LDApU.o sphpro.o paw.o us.o \
ebs.o wavpre.o wavpre_noio.o broyden.o \
dynbr.o rmm-diis.o reader.o writer.o tutor.o xml_writer.o \
brent.o stufak.o fileio.o opergrid.o stepver.o \
dipol.o xclib.o chgloc.o subrot.o optreal.o davidson.o \
edtest.o electron.o shm.o pardens.o paircorrection.o \
optics.o constr_cell_relax.o stm.o finite_diff.o \
elpol.o setlocalpp.o

########################

Now i am getting the following error while compiling "make -f makefile.intel":

r_cell_relax.o stm.o finite_diff.o elpol.o setlocalpp.o fftmpiw.o fftmpi_map.o fft3dlib.o /opt/intel/mkl/10.0.2.018/lib/em64t/libfftw3xf_intel.a -L../vasp.4.lib -ldmy ../vasp.4.lib/linpack_double.o -L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 .lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread /opt/intel/mkl/10.0.2.018/lib/em64t/libmkl_scalapack_lp64.a -L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lsvml
ld: skipping incompatible ../vasp.4.lib/libdmy.a when searching for -ldmy
ld: cannot find -ldmy
make: *** [vasp] Error 1


I don't know what's the problem?
Am i doing something wrong.... :(

Thanks and regards,
Jigar Halani
Talentain Technologies

Compilation problem with VASP-4.6.21 and intel compiler Version 10.1

Posted: Thu May 29, 2008 6:01 pm
by baolkvn
that error is due to no libdmy.a created
First, go to vasp.4.lib, then do:
1. rm -f libdmy.a
2. replace the line "rm libdmy.a" in makefile.intel by "rm -f libdmy.a" (this step is maybe not necessary)
3. run make -f makefile.intel again to create libdmy.a file for the next step (run make in vasp.4.6.21)
4. go to vasp.4.6.21, run make clean, then run make again.

Happy vasping
TA Quoc Bao

Compilation problem with VASP-4.6.21 and intel compiler Version 10.1

Posted: Thu May 29, 2008 8:59 pm
by jigar_halani
Thanx a lot. Will tryout 2morow.
Happy Vasping... ;)

Regards,
Jigar Halani
Talentain Technologies