Page 1 of 1

vasp 5.2 compile problem

Posted: Tue Dec 28, 2010 11:52 am
by luxun
Dear ALL,

I am trying to compile vasp 5.2 on RHEL 5.4.
The compile is mvapich in PGI compile and use GotoBLAS2 to make vasp 5.2

I used makefile as following

Code: Select all

#-----------------------------------------------------------------------
# location of SCALAPACK
# if you do not use SCALAPACK simply uncomment the line SCA
#-----------------------------------------------------------------------

BLACS=/usr/local/BLACS_lam
SCA_= /usr/local/SCALAPACK_lam

SCA= $(SCA_)/scalapack_LINUX.a $(SCA_)/pblas_LINUX.a $(SCA_)/tools_LINUX.a \
 $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a $(BLACS)/LIB/blacs_MPI-LINUX-0.a $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a

SCA=

#-----------------------------------------------------------------------
# libraries for mpi
#-----------------------------------------------------------------------

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

# FFT: only option  fftmpi.o with fft3dlib of Juergen Furthmueller

#FFT3D   = fftmpi.o fftmpi_map.o fft3dfurth.o fft3dlib.o

#-----------------------------------------------------------------------
# general rules and compile lines
#-----------------------------------------------------------------------
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       xclib.o     xclib_grad.o \
         radial.o   pseudo.o   mgrid.o    gridq.o     ebs.o  \
         mkpoints.o wave.o     wave_mpi.o  wave_high.o  \
         $(BASIC)   nonl.o     nonlr.o    nonl_high.o dfast.o    choleski2.o \
         mix.o      hamil.o    xcgrad.o   xcspin.o    potex1.o   potex2.o  \
         metagga.o constrmag.o cl_shift.o relativistic.o LDApU.o \
         paw_base.o egrad.o    pawsym.o   pawfock.o  pawlhf.o    paw.o   \
         mkpoints_full.o       charge.o   dipol.o    pot.o  \
         dos.o      elf.o      tet.o      tetweight.o hamil_rot.o \
         steep.o    chain.o    dyna.o     sphpro.o    us.o  core_rel.o \
         aedens.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  \
         chgloc.o   fast_aug.o fock.o     mkpoints_change.o sym_grad.o \
         mymath.o   internals.o dimer_heyden.o dvvtrajectory.o vdwforcefield.o \
         hamil_high.o nmr.o    force.o \
         pead.o     subrot.o   subrot_scf.o pwlhf.o  gw_model.o optreal.o   davidson.o \
         electron.o rot.o  electron_all.o shm.o    pardens.o  paircorrection.o \
         optics.o   constr_cell_relax.o   stm.o    finite_diff.o elpol.o    \
         hamil_lr.o rmm-diis_lr.o  subrot_cluster.o subrot_lr.o \
         lr_helper.o hamil_lrf.o   elinear_response.o ilinear_response.o \
         linear_optics.o linear_response.o   \
         setlocalpp.o  wannier.o electron_OEP.o electron_lhf.o twoelectron4o.o \
         ratpol.o screened_2e.o wave_cacher.o chi_base.o wpot.o local_field.o \
         ump2.o bse.o acfdt.o chi.o sydmat.o

INC=

vasp: $(SOURCE) $(FFT3D) $(INC) main.o
        rm -f vasp
        $(FCL) -o vasp main.o  $(SOURCE)   $(FFT3D) $(LIB) $(LINK)
makeparam: $(SOURCE) $(FFT3D) makeparam.o main.F $(INC)
        $(FCL) -o makeparam  $(LINK) makeparam.o $(SOURCE) $(FFT3D) $(LIB)
zgemmtest: zgemmtest.o base.o random.o $(INC)
        $(FCL) -o zgemmtest $(LINK) zgemmtest.o random.o base.o $(LIB)
dgemmtest: dgemmtest.o base.o random.o $(INC)
        $(FCL) -o dgemmtest $(LINK) dgemmtest.o random.o base.o $(LIB)
ffttest: base.o smart_allocate.o mpi.o mgrid.o random.o ffttest.o $(FFT3D) $(INC)
        $(FCL) -o ffttest $(LINK) ffttest.o mpi.o mgrid.o random.o smart_allocate.o base.o $(FFT3D) $(LIB)
kpoints: $(SOURCE) $(FFT3D) makekpoints.o main.F $(INC)
        $(FCL) -o kpoints $(LINK) makekpoints.o $(SOURCE) $(FFT3D) $(LIB)

clean:
        -rm -f *.g *.f *.o *.L *.mod ; touch *.F

main.o: main$(SUFFIX)
        $(FC) $(FFLAGS)$(DEBUG)  $(INCS) -c main$(SUFFIX)
xcgrad.o: xcgrad$(SUFFIX)
        $(FC) $(FFLAGS) $(INLINE)  $(INCS) -c xcgrad$(SUFFIX)
xcspin.o: xcspin$(SUFFIX)
        $(FC) $(FFLAGS) $(INLINE)  $(INCS) -c xcspin$(SUFFIX)

makeparam.o: makeparam$(SUFFIX)
        $(FC) $(FFLAGS)$(DEBUG)  $(INCS) -c makeparam$(SUFFIX)

makeparam$(SUFFIX): makeparam.F main.F
#
# MIND: I do not have a full dependency list for the include
# and MODULES: here are only the minimal basic dependencies
# if one strucuture is changed then touch_dep must be called
# with the corresponding name of the structure
#
base.o: base.inc base.F
mgrid.o: mgrid.inc mgrid.F
constant.o: constant.inc constant.F
lattice.o: lattice.inc lattice.F
setex.o: setexm.inc setex.F
pseudo.o: pseudo.inc pseudo.F
poscar.o: poscar.inc poscar.F
mkpoints.o: mkpoints.inc mkpoints.F
wave.o: wave.inc wave.F
nonl.o: nonl.inc nonl.F
nonlr.o: nonlr.inc nonlr.F

$(OBJ_HIGH):
        $(CPP)
        $(FC) $(FFLAGS) $(OFLAG_HIGH) $(INCS) -c $*$(SUFFIX)
$(OBJ_NOOPT):
        $(CPP)
        $(FC) $(FFLAGS) $(INCS) -c $*$(SUFFIX)

fft3dlib_f77.o: fft3dlib_f77.F
        $(CPP)
        $(F77) $(FFLAGS_F77) -c $*$(SUFFIX)

.F.o:
        $(CPP)
        $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX)
.F$(SUFFIX):
        $(CPP)
$(SUFFIX).o:
        $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX)
And I got following error

Code: Select all

/usr/bin/ld: Warning: alignment 16 of symbol `vaspxml_9_' in xml.o is smaller than 32 in main.o
/usr/bin/ld: Warning: alignment 8 of symbol `vaspxml_8_' in xml.o is smaller than 16 in main.o
/usr/bin/ld: Warning: alignment 8 of symbol `main_mpi_8_' in main_mpi.o is smaller than 16 in main.o
/usr/bin/ld: Warning: alignment 16 of symbol `scala_8_' in scala.o is smaller than 32 in main.o
/usr/bin/ld: Warning: alignment 16 of symbol `ini_14_' in ini.o is smaller than 32 in main.o
/usr/bin/ld: Warning: alignment 8 of symbol `ini_8_' in ini.o is smaller than 16 in main.o
/usr/bin/ld: Warning: alignment 16 of symbol `setexm_10_' in xclib.o is smaller than 32 in main.o
/usr/bin/ld: Warning: alignment 16 of symbol `setexm_8_' in xclib.o is smaller than 32 in main.o
/usr/bin/ld: Warning: alignment 8 of symbol `mgrid_8_' in mgrid.o is smaller than 16 in main.o
/usr/bin/ld: Warning: alignment 8 of symbol `wave_8_' in wave.o is smaller than 16 in main.o
......
......
......
/usr/bin/ld: warning: i386 architecture of input file `base.o' is incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `mpi.o' is incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `smart_allocate.o' is incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `xml.o' is incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `constant.o' is incompatible with i386:x86-64 output
/usr/bin/ld: warning: i386 architecture of input file `jacobi.o' is incompatible with i386:x86-64 output
asa.o: In function `asa_ylm3st_':
/usr1/wzlu/vasp5.2/src/vasp.5.2/./asa.f:287: undefined reference to `__mth_i_dpowix'
asa.o: In function `asa_setylm_nabla_ylm_':
/usr1/wzlu/vasp5.2/src/vasp.5.2/./asa.f:948: undefined reference to `__mth_i_dsincosx'
lattice.o: In function `lattice_toprim_':
/usr1/wzlu/vasp5.2/src/vasp.5.2/./lattice.f:183: undefined reference to `__mth_i_dmodx'
/usr1/wzlu/vasp5.2/src/vasp.5.2/./lattice.f:183: undefined reference to `__mth_i_dmodx'
/usr1/wzlu/vasp5.2/src/vasp.5.2/./lattice.f:183: undefined reference to `__mth_i_dmodx'
......
fft3dlib.o: In function `ftrigc_':
/usr1/wzlu/vasp5.2/src/vasp.5.2/./fft3dlib.f:1468: undefined reference to `__mth_i_dsincosx'
fft3dlib.o: In function `ftrigr_':
/usr1/wzlu/vasp5.2/src/vasp.5.2/./fft3dlib.f:1495: undefined reference to `__mth_i_dsincosx'
/usr1/wzlu/vasp5.2/src/vasp.5.2/./fft3dlib.f:1501: undefined reference to `__mth_i_dsincosx'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `s_cmp'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `z_sqrt'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `s_cat'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `c_sqrt'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `s_copy'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `z_exp'
/prj/GotoBLAS2/1.13/001/libgoto2_core2p-r1.13.so: undefined reference to `c_exp'
make: *** [vasp] Error 2

2 question:
1. Why the .o file is 32 bit?
2. How to solve the error?
Thanks a lot.

Re: vasp 5.2 compile problem

Posted: Wed Sep 04, 2024 12:30 pm
by support_vasp

Hi,

We're sorry that we didn’t answer your question. This does not live up to the quality of support that we aim to provide. The team has since expanded. If we can still help with your problem, please ask again in a new post, linking to this one, and we will answer as quickly as possible.

Best wishes,

VASP