Some problem during compiling cp2k-4.1 using intel compiler

Tianshu Jiang in Beijing jts2t... at gmail.com
Sat Apr 14 12:17:18 UTC 2018


Thanks Alfio, it works!

在 2018年4月12日星期四 UTC+8下午4:26:46,Alfio Lazzaro写道:
>
> The error message is that you cannot link to BLAS.
> My first question is that you are using ACML, which has a BLAS 
> implementation, and then you are linking to librefblas.a?
> I tried your arch file on my local CP2K installation. 
> I have removed ACML and reordered the library in the linking. Note that I 
> did a change in scalapack and lapack (in my case, I have installed 
> lapack through scalapack).
>
> CC         = gcc 
> CPP        = 
> FC         = mpif90 
> LD         = mpif90 
> AR         = ar -r 
>
> FFTW_INC   = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/fftw-3.3.4/include 
> FFTW_LIB   = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/fftw-3.3.4/lib 
> LIBINT_INC = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libint-1.1.4/include 
> LIBINT_LIB = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libint-1.1.4/lib 
> LIBXC_INC  = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libxc-2.2.2/include 
> LIBXC_LIB  = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libxc-2.2.2/lib 
> SCALAPACK_LIB = 
> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/scalapack-2.0.2/
>
> DFLAGS     = -D__FFTW3 -D__LIBINT -D__LIBXC2 -D__MPI_VERSION=2\ 
>             -D__LIBINT_MAX_AM=7 -D__LIBDERIV_MAX_AM1=6 -D__MAX_CONTR=4\ 
>             -D__parallel -D__SCALAPACK 
> CPPFLAGS   = 
> FCFLAGS    = $(DFLAGS) -O2 -ffast-math -ffree-form 
> -ffree-line-length-none\ 
>             -fopenmp -ftree-vectorize -funroll-loops\ 
>             -mtune=native 
> FCFLAGS   += -I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC) 
> LDFLAGS    = $(FCFLAGS) -dynamic-libgfortran 
> LIBS       = -L$(FFTW_LIB) -lfftw3 -lfftw3_omp 
> LIBS      += -L$(LIBINT_LIB) -lderiv -lint 
> LIBS      += -L$(LIBXC_LIB)  -lxcf03 -lxc 
> LIBS      += -L$(SCALAPACK_LIB) -lscalapack -lreflapack -lrefblas
>
> Could you try if it links in your case?
> It is definitely a problem with the library linking, so you have to check 
> there...
>
> I hope it helps to solve your problem.
>
> Alfio
>
>
>
>
>
>
> Il giorno mercoledì 11 aprile 2018 15:35:56 UTC+2, Tianshu Jiang in 
> Beijing ha scritto:
>>
>> Hi Alfio,
>> Sorry to bother you again. After I changed my arch file. The original 
>> error disappear. But there exists some new error.
>>
>> /share/home/tshjiang/cp2k-4.1/lib/Linux-x86-64-gfortran/psmp/libdbcsrmm.a(dbcsr_mm_hostdrv.o): 
>> In function `__dbcsr_mm_hostdrv_MOD_blas_process_mm_stack_s':
>> dbcsr_mm_hostdrv.F:(.text+0xc2): undefined reference to `sgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x14e): undefined reference to `sgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x1cd): undefined reference to `sgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x246): undefined reference to `sgemm_'
>> /share/home/tshjiang/cp2k-4.1/lib/Linux-x86-64-gfortran/psmp/libdbcsrmm.a(dbcsr_mm_hostdrv.o): 
>> In function `__dbcsr_mm_hostdrv_MOD_blas_process_mm_stack_d':
>> dbcsr_mm_hostdrv.F:(.text+0x332): undefined reference to `dgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x3be): undefined reference to `dgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x43d): undefined reference to `dgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x4b6): undefined reference to `dgemm_'
>> /share/home/tshjiang/cp2k-4.1/lib/Linux-x86-64-gfortran/psmp/libdbcsrmm.a(dbcsr_mm_hostdrv.o): 
>> In function `__dbcsr_mm_hostdrv_MOD_blas_process_mm_stack_c':
>> dbcsr_mm_hostdrv.F:(.text+0x5a2): undefined reference to `cgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x62e): undefined reference to `cgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x6ad): undefined reference to `cgemm_'
>> dbcsr_mm_hostdrv.F:(.text+0x726): undefined reference to `cgemm_'
>>
>> But I have no idea why there exist such error.
>> The arch file is here
>>
>> CC         = gcc
>> CPP        =
>> FC         = mpif90
>> LD         = mpif90
>> AR         = ar -r
>> ACML_INC   = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/acml-5.3.1/gfortran64/include
>> ACML_LIB   = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/acml-5.3.1/gfortran64/lib
>> FFTW_INC   = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/fftw-3.3.4/include
>> FFTW_LIB   = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/fftw-3.3.4/lib
>> LIBINT_INC = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libint-1.1.4/include
>> LIBINT_LIB = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libint-1.1.4/lib
>> LIBXC_INC  = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libxc-2.2.2/include
>> LIBXC_LIB  = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/libxc-2.2.2/lib
>> DFLAGS     = -D__FFTW3 -D__LIBINT -D__LIBXC2 -D__MPI_VERSION=2\
>>              -D__LIBINT_MAX_AM=7 -D__LIBDERIV_MAX_AM1=6 -D__MAX_CONTR=4\
>>              -D__parallel -D__SCALAPACK
>> CPPFLAGS   =
>> FCFLAGS    = $(DFLAGS) -O2 -ffast-math -ffree-form 
>> -ffree-line-length-none\
>>              -fopenmp -ftree-vectorize -funroll-loops\
>>              -mtune=native\
>>              -I$(ACML_INC) -I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC)
>> LDFLAGS    = $(FCFLAGS) -dynamic-libgfortran
>> LIBS       = 
>> /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/scalapack-2.0.2/libscalapack.a\
>>             
>>  /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/acml-5.3.1/gfortran64/lib/libacml.a\
>>             
>>  /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/lapack-3.5.0/liblapack.a\
>>             
>>  /share/home/tshjiang/cp2k-4.1/tools/toolchain/install/lapack-3.5.0/librefblas.a\
>>              $(FFTW_LIB)/libfftw3.a\
>>              $(FFTW_LIB)/libfftw3_threads.a\
>>              $(LIBXC_LIB)/libxcf90.a\
>>              $(LIBXC_LIB)/libxc.a\
>>              $(LIBINT_LIB)/libderiv.a\
>>              $(LIBINT_LIB)/libint.a
>>
>>
>>
>> 在 2018年4月7日星期六 UTC+8下午2:06:17,Alfio Lazzaro写道:
>>>
>>> Note that Intel 17.0.1 is not supported (see 
>>> https://www.cp2k.org/dev:compiler_support ). Make sure that your CP2K 
>>> installation goes through the regtest (
>>> https://www.cp2k.org/dev:regtesting ).
>>>
>>> Alfio
>>>
>>>
>>>
>>> Il giorno venerdì 6 aprile 2018 14:11:57 UTC+2, Tianshu Jiang in Beijing 
>>> ha scritto:
>>>>
>>>> Dear all, 
>>>>
>>>> I have been compiling cp2k-4.1 using intel compiler for several days 
>>>> but there is always problems.
>>>> I edit both Linux-x86-64-gfortran.psmp and Linux-x86-64-intel-mic.psmp 
>>>> file according to the tutorial searched from the internet.
>>>> But in my latest trial, the beginning is OK, then the error emerge. 
>>>> The compiling environment is on our cluster, the version of Intel 
>>>> compiler is 17.0.1, libint 1.1.4 and libxc 2.2.2.
>>>> The error information is as follows
>>>>
>>>>
>>>> mpiifort -c -D__MKL -D__FFTW3 -D__LIBINT -D__LIBXC2 -D__MPI_VERSION=3 -
>>>> D__LIBINT_MAX_AM=7 -D__LIBDERIV_MAX_AM1=6 -D__MAX_CONTR=4 -D__parallel 
>>>> -D__SCALAPACK -O2 -g -traceback -fpp -free -I/soft/intel_2017/
>>>> compilers_and_libraries_2017/linux/mkl/include -I/soft/intel_2017/
>>>> compilers_and_libraries_2017/linux/mkl/include/fftw -I/share/home/
>>>> tshjiang/intel_cp2k/tools/toolchain/install/libint-1.1.4/include -I/
>>>> share/home/tshjiang/intel_cp2k/tools/toolchain/install/libxc-2.2.2/include 
>>>> -D__COMPILE_ARCH="\"Linux-x86-64-gfortran\"" -D__COMPILE_DATE="\"Fri 
>>>> Apr  6 19:45:36 CST 2018\"" -D__COMPILE_HOST="\"ln02\"" -
>>>> D__COMPILE_REVISION="\"svn:17462\"" -D__DATA_DIR=
>>>> "\"/share/home/tshjiang/intel_cp2k/data\"" -D__SHORT_FILE__=
>>>> "\"eri_mme/eri_mme_lattice_summation.F\"" /share/home/tshjiang/
>>>> intel_cp2k/src/eri_mme/eri_mme_lattice_summation.F
>>>> ld: group ended before it began (--help for usage)
>>>> make[3]: *** [/share/home/tshjiang/intel_cp2k/exe/Linux-x86-64-gfortran
>>>> /graph.psmp] Error 1
>>>> make[3]: *** Waiting for unfinished jobs....
>>>> make[2]: *** [all] Error 2
>>>> make[1]: *** [psmp] Error 2
>>>> make: *** [all] Error 
>>>>
>>>>
>>>>
>>>> I even can not figure out where is the error. The command of make is:
>>>>
>>>> make -j 8 ARCH=Linux-x86-64-gfortran VERSION=psmp
>>>>
>>>> the arch file looks like
>>>>
>>>> # Tested with: GFortran 4.9.2, MPICH 3.1, LAPACK 3.5.0, ScaLAPACK 2.0.2
>>>> CC         = icc
>>>> CPP        =
>>>> FC         = mpiifort
>>>> LD         = mpiifort
>>>> AR         = ar -r
>>>>
>>>> LIBINT_INC = /share/home/tshjiang/intel_cp2k/tools/toolchain/install/
>>>> libint-1.1.4/include
>>>>
>>>> LIBINT_LIB = /share/home/tshjiang/intel_cp2k/tools/toolchain/install/
>>>> libint-1.1.4/lib
>>>> LIBXC_INC  = /share/home/tshjiang/intel_cp2k/tools/toolchain/install/
>>>> libxc-2.2.2/include
>>>> LIBXC_LIB  = /share/home/tshjiang/intel_cp2k/tools/toolchain/install/
>>>> libxc-2.2.2/lib
>>>> DFLAGS     = -D__MKL -D__FFTW3 -D__LIBINT -D__LIBXC2 -D__MPI_VERSION=3\
>>>>              -D__LIBINT_MAX_AM=7 -D__LIBDERIV_MAX_AM1=6 -D__MAX_CONTR=4
>>>> \
>>>>              -D__parallel -D__SCALAPACK
>>>> CFLAGS     = $(DFLAGS)
>>>> CPPFLAGS   =
>>>> MKLROOT    = /soft/intel_2017/compilers_and_libraries_2017/linux/mkl
>>>> FCFLAGS    = $(DFLAGS) -O2 -g -traceback -fpp -free \
>>>>              -I$(MKLROOT)/include -I$(MKLROOT)/include/fftw -I$(
>>>> LIBINT_INC) -I$(LIBXC_INC)
>>>> FCFLAGS2   = $(DFLAGS) -O0 -g -traceback -fpp -free \
>>>>              -I$(MKLROOT)/include -I$(MKLROOT)/include/fftw -I$(
>>>> LIBINT_INC) -I$(LIBXC_INC)
>>>> LDFLAGS    = $(FCFLAGS) -static-intel
>>>> LDFLAGS_C  = $(FCFLAGS) -static-intel -nofor_main
>>>> LIBS       = $(MKLROOT)/lib/intel64/libmkl_scalapack_lp64.a \
>>>>              -WI,--start-group $(MKLROOT)/lib/intel64/libmkl_intel_lp64
>>>> .a \
>>>>              $(MKLROOT)/lib/intel64/libmkl_sequential.a \
>>>>              $(MKLROOT)/lib/intel64/libmkl_core.a \
>>>>              $(MKLROOT)/lib/intel64/libmkl_blacs_intelmpi_lp64.a -Wl,--
>>>> end-group \
>>>>              -lpthread -lm \
>>>>              -L$(LIBXC_LIB) -lxcf90 -lxc \
>>>>              $(LIBINT_LIB)/libderiv.a \
>>>>              $(LIBINT_LIB)/libint.a -lstdc++
>>>> mp2_optimize_ri_basis.o:mp2_optimize_ri_basis.F
>>>>         $(FC) -c $(FCFLAGS2) $<
>>>> hfx_contraction_methods.o:hfx_contraction_methods.F
>>>>         $(FC) -c $(FCFLAGS2) $<
>>>>
>>>> Can anyone encounter the similar situation and give some advice. 
>>>> I will be appreciated for your suggestion.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20180414/05c0bc81/attachment.htm>


More information about the CP2K-user mailing list