gcc-8.3.0.tar.gz is found
Installing GCC from scratch into /opt/cp2k/cp2k-7.1/tools/toolchain/install/gcc-8.3.0
ERROR: (./scripts/install_gcc.sh, line 56) Non-zero exit code detected.
我现在没办法安装8.3了,每次安装好就是8.3.1作者Author: jinnengzhi 时间: 2021-5-10 15:48
24.2.3 查看安装文档
官网https://www.cp2k.org/howto:compile中介绍了编译所需要的数学库和MPI等要求。https://www.cp2k.org/dev:compiler_support列出了编译的要求。
安装必备组件的最便捷方法是使用~/tools/toolchain/的install_cp2k_toolchain.sh脚本工具。先来查看install_cp2k_toolchain.sh的帮助文件,可以查看安装参数及其说明。https://github.com/cp2k/cp2k/blo ... README_FOR_USERS.md也说明了toolchain的配置方法。
cd tools/toolchain/
./install_cp2k_toolchain.sh --help
如果机器能联网,可以使用toolchain方式自动配置。
cd tools/toolchain/
./install_cp2k_toolchain.sh
自动配置后,会在cp2k-6.1.0/tools/toolchain/install/目录下生成配置的各个软件包,如fftw,lapack、libint等。除此之外,还会生成arch文件夹,arch文件夹包含中local.pdbg、local.popt、local.psmp、local.sdbg、local.sopt、local.ssmp、local_warn.psm和-.s文件,将这些文件全部拷贝至cp2k-6.1.0/arch文件中。
cd /public/home/jinnzh/cp2k-6.1.0/arch
cp ../tools/toolchain/install/arch/* ./
然后在cp2k-6.1.0/makefiles文件夹,执行命令如下:
make -j4 ARCH=local VERSION="sopt sdbg ssmp popt pdbg psmp"
系统开始编译,编译完成,会生成相关可执行文件和库文件。
除了自动构建之外,CP2K也提供了预先构建好的arch文件,在cp2k-6.1.0/arch文件夹下面,用户可以对其修改以适应自己的编译环境。
根据官网说明,CP2K的arch文件有6个类型:
Acronym Meaning Recommended for
sdbg serial single core testing and debugging
sopt serial general single core usage
ssmp parallel (only OpenMP) optimized, single node, multi core
pdbg parallel (only MPI) multi-node testing and debugging
popt parallel (only MPI) general usage, no threads
psmp parallel (MPI + OpenMP) general usage, threading might improve scalability and memory usage
保存,退出。
24.3.3 执行make
cd /public/home/jinnzh/sourcecode/cp2k-6.1.0/makefiles
执行以下命令:
make -j 14 ARCH=Linux-x86-64-gfortran_mkl_elpa VERSION=popt
make -j 14代表用14个核编译。
编译完成,在/public/home/jinnzh/sourcecode/cp2k-6.1.0下生成exe文件夹,根据编译配置不同,exe文件夹下面生成不同的文件夹,本次编译会生成Linux-x86-64-gfortran_mkl_elpa文件夹,所有编译生成的可执行文件在其中。在/public/home/jinnzh/sourcecode/cp2k-6.1.0下生成lib/Linux-x86-64-gfortran_mkl_elpa/popt文件夹,生成的库文件在其中。
编译失败重新编译之前,执行以下命令。
若保留exe文件,执行:
make ARCH=Linux-x86-64-gfortran_mkl_elpa VERSION=popt clean
清除所有文件:
make ARCH=Linux-x86-64-gfortran_mkl_elpa VERSION=popt realclean
24.3.4 构建CP2K库文件
CP2K还可以构建为一个库文件,执行命令如下:
make -j 14 ARCH=Linux-x86-64-gfortran_mkl_elpa VERSION=popt libcp2k
编译完成后,在~cp2k-6.1.0/lib/Linux-x86-64-gfortran_mkl_elpa/popt文件夹中会生成库文件libcp2k.a。
24.4 测试
cd /public/home/jinnzh/sourcecode/cp2k-6.1.0/makefiles
执行以下命令:
make -j 14 ARCH=Linux-x86-64-gfortran_mkl_elpa VERSION=popt test
测试结束,显示:
<<< /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-x86-64-gfortran_mkl_elpa/popt/TEST-Lit-15 (142 of 221) done in 201.00 sec
--------------------------------------------------------------------------
--------------------------------------------------------------------------
regtesting location summary file: /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-x86-642-24_13-42-37/summary.txt
regtesting location error_summary file: /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-2019-12-24_13-42-37/error_summary
regtesting location memory_summary file: /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-2019-12-24_13-42-37/memory_summary
regtesting location output dir: /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-x86-64-g24_13-42-37
regtesting location last dir: /public/home/jinnzh/sourcecode/cp2k-6.1.0/regtesting/Linux-x86-64-gfo
--------------------------------- Summary --------------------------------
Number of FAILED tests 0
Number of WRONG tests 0
Number of CORRECT tests 3047
Number of NEW tests 19
Total number of tests 3066
GREPME 0 0 3047 19 3066 X
--------------------------------------------------------------------------