make error in 7.2.2, cannot find -ldmapp

11 views
Skip to first unread message

Ziyang Wei

unread,
Apr 17, 2024, 2:37:56 AMApr 17
to NWChem Forum
Dear NWchem team,

I'm trying to make NWchem on a linux cluster with intel compiler, but got an error message at a very late step, (I believe all the object files were compiled but ld reports an error): 

ifort -i8 -align -fpp -Qoption,fpp,-w0 -qno-openmp -fimf-arch-consistency=true -finline-limit=250 -O2 -g -fp-model source     -L/scratch/gpfs/zw7018/nwchem-7.2.2/lib/LINUX64 -L/scratch/gpfs/zw7018/nwchem-7.2.2/src/tools/install/lib   -o /scratch/gpfs/zw7018/nwchem-7.2.2/bin/LINUX64/nwchem nwchem.o stubs.o -lnwctask -lccsd -lmcscf -lselci -lmp2 -lmoints -lstepper -ldriver -loptim -lnwdft -lgradients -lcphf -lesp -lddscf -ldangchang -lguess -lhessian -lvib -lnwcutil -lrimp2 -lproperty -lsolvation -lnwints -lprepar -lnwmd -lnwpw -lofpw -lpaw -lpspw -lband -lnwpwlib -lcafe -lspace -lanalyze -lqhop -lpfft -ldplot -ldrdy -lvscf -lqmmm -lqmd -letrans -lpspw -ltce -lbq -lmm -lcons -lperfm -ldntmc -lccca -ldimqm -lfcidump -lgwmol -lnwcutil -lga -larmci -lpeigs -lperfm -lcons -lbq -lnwcutil  -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -l64to32 -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_blacs_intelmpi_ilp64 -lpthread -lm -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_core -liomp5 -lpthread -ldmapp -lm  -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mpi/intel64/lib/release -L/opt/intel/compilers_and_libraries_2019.5.281/linux/mpi/intel64/lib -lmpifort -lmpi -lrt -lpthread -ldl -lhwloc    -lcomex -lmpifort -lmpi -lrt -lpthread -ldl -lhwloc -lblas -lrt -lpthread -lpthread   


My detailed make process is (mostly adapted from https://nwchemgit.github.io/Compiling-NWChem.html#example-nersc-cori):

module purge

module load intel-mpi/intel/2019.5/64

module load intel-mkl/2019.5/5/64

module load intel/19.0/64/19.0.5.281


export NWCHEM_TOP=/scratch/gpfs/zw7018/nwchem-7.2.2

export NWCHEM_TARGET=LINUX64

export ARMCI_NETWORK=MPI-PR

export NWCHEM_MODULES="all"


export USE_MPI=y


make nwchem_config 


export USE_SCALAPACK=y  

export SCALAPACK="-L$MKLROOT/lib/intel64 -lmkl_scalapack_ilp64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_blacs_intelmpi_ilp64 -lpthread -lm" 

export SCALAPACK_SIZE=8  

export SCALAPACK_LIB="$SCALAPACK" 

export BLAS_SIZE=8

export BLASOPT="-L$MKLROOT/lib/intel64 -lmkl_intel_ilp64 -lmkl_core -lmkl_sequential -lmkl_core -liomp5 -lpthread -ldmapp -lm"

export LAPACK_LIB="$SCALAPACK" 


export CC=icc

export CXX=icpc

export FC=ifort


make


It will be appreciated if suggestions can be provided. Thank you for your time. 

Best regards,
Ziyang Wei

Edoardo Aprà

unread,
Apr 17, 2024, 11:57:42 AMApr 17
to NWChem Forum
Please get rid of "-ldmapp" since that was only used on Crays ages ago. It's not needed on any current system.
You might want to set ARMCI_NETWORK=MPI-PR for best parallel performances

If you would like to use Intel compilers, I would recommend the following simple settings (that do not use MKL, in favor of automated builds of OpenBLAS and Scalapack)
export BLAS_SIZE=8
export SCALAPACK_SIZE=8
export BUILD_OPENBLAS=1
export BUILD_SCALAPACK=1
export USE_MPI=1
export ARMCI_NETWORK=MPI-PR

then compile with

make FC=ifort

Ziyang Wei

unread,
Apr 17, 2024, 6:07:33 PMApr 17
to NWChem Forum
Dear Edoardo,

Many thanks for the advice. Removing -ldmapp indeed works. I have other problems when trying to build the openblas but using the mkl one works in the end.
Thank you for your time.

Best regards,
Ziyang Wei

Reply all
Reply to author
Forward
0 new messages