【CP2K学习】-在Ubuntu上安装CP2K的全过程(包括gcc,gfortran,MKL等配置)

本文详细指导了在Ubuntu20.04系统上安装CP2K2023.2版本的步骤,包括检查gcc/gfortran、安装MKL数学库、下载和编译CP2K包,以及ssmp和popt版本的测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
CP2K是第一性原理计算程序中发展迅速的程序之一,因其开源性、速度性等优点,是广大计算化学研究者的选择。

本文档用于记录安装CP2K的全过程,主要参考来源为卢天老师的博文[CP2K第一性原理程序在CentOS中的简易安装方法],本文在此博文的指导下,将某些安装过程细化。

注:本系统中的Ubuntu版本为20.04.1,本次安装CP2K的版本为2023.2

CP2K的安装

检查系统是否安装gcc,gfortran

在安装CP2K前,需要检查系统中是否安装了gcc,gfortran,以及其版本是否高于5.5版

gcc -v
gfortran -v

如果没有安装,则需要使用root权限安装

sudo apt install gcc
sudo apt install gfortran

MKL数学库的安装

  1. 首先进入MKL的官网
    在这里插入图片描述
  2. 选择linux系统-Offline Installer(离线安装)-2023.2.0(版本号)
    在这里插入图片描述
    在这个页面的下方可以看到下载的链接以及安装指导
    在这里插入图片描述
    这里提示可以通过以下这两行代码在linux系统上分别下载、安装
    在这里插入图片描述
wget https://registrationcenter-download.intel.com/akdlm/IRC_NAS/992857b9-624c-45de-9701-f6445d845359/l_BaseKit_p_2023.2.0.49397_offline.sh
#注意需要进入安装包所在目录,在运行以下命令,如果没有权限,也可以用bash运行
sudo sh ./l_BaseKit_p_2023.2.0.49397_offline.sh

注意:此处的安装会使系统页面变成需要自己在系统上选择下一步的样子,注意别选错了。
3. 获取MKL安装所在目录,如:/home/username/intel/oneapi
4. 回到主目录(cd ~),添加以下命令到.bashrc文件中(vi .bashrc):

source /home/username/intel/oneapi/mkl/2023.2.0/env/vars.sh

注:此处要根据自己机子的实际目录进行修改
5. 保存并退出(按Esc停止输入,按shift+:,输入wq),执行:source .bashrc,检查是否安装成功:which mkl_link_tool
6. 结果输出为:/home/username/intel/oneapi/mkl/2023.2.0/bin/intel64/mkl_link_tool因此MKL安装成功

CP2K安装包下载

  1. 进入CP2K官网,点击“download”.
    在这里插入图片描述
  2. 找到github指示入口,下载安装包(以tar.bz2为结尾的包)
    在这里插入图片描述
    在这里插入图片描述
  3. 在linux系统中解压安装包:tar -xf cp2k-2023.2.tar.bz2,解压安装包后的目录为:/home/username/software/cp2k202302,这里每个人的安装目录有所差异,因此要学会改成自己系统的实际目录,这一点适用于本文全部涉及路径的地方。
  4. 进入toolchain所在目录(如,/home/username/software/cp2k202302/tools/toolchain/),并执行下载库的命令(参考来源及解析https://github.com/cp2k/cp2k/blob/master/tools/toolchain/README.md):
cd /home/username/software/cp2k202302/tools/toolchain/
./install_cp2k_toolchain.sh --with-sirius=no --with-openmpi=system --with-plumed=install -j 48

注意:此处48为机子的核数,其他参数的设置需要参考卢天老师博文的解释以及原网站的说明

CP2K的编译

  1. 以上命令顺利运行后,将/home/username/software/cp2k202302/tools/toolchain/install/arch下的所有文件复制到/home/username/software/cp2k202302/arch
  2. 接着依次运行以下命令:
source /home/username/software/cp2k202302/tools/toolchain/install/setup
cd /home/username/software/cp2k202302
make -j 48 ARCH=local VERSION="ssmp sdbg psmp pdbg"
  1. 编译成功。
    在这里插入图片描述
  2. 回到主目录(cd ~),将以下内容添加到.bashrc文件中(vi .bashrc)
source /home/username/software/cp2k202302/tools/toolchain/install/setup
export PATH=$PATH:/home/username/software/cp2k202302/exe/local
  1. 添加这两行内容到.bashrc文件后,保存并退出(按Esc停止输入,按shift+:,输入wq),执行:source .bashrc
  2. 检查是否安装成功:cp2k.ssmp -v
    在这里插入图片描述

CP2K的测试

使用卢天老师提供的测试文件:http://sobereva.com/attach/586/test.inp
分别测试CP2K的ssmp,popt版本。

ssmp版本测试

进入测试文件所在目录,执行:cp2k.ssmp test.inp |tee test.out
软件正常运行,输出:
在这里插入图片描述

popt版本测试

进入测试文件所在目录,执行:mpirun -np 12 cp2k.popt test.inp |tee test.out
软件正常运行,输出:
在这里插入图片描述
以上便是本次安装CP2K的记录,使用一个晚上专心安装即可安装成功。

<think>好的,我需要帮助用户在Rocky Linux 9上安装CP2K软件。首先,我得回忆一下CP2K安装流程。CP2K是一个量子化学和固体物理学的软件包,编译起来可能需要一些依赖项和工具。用户提到的是Rocky Linux 9,这是一个基于RHEL的发行版,所以应该使用yum或dnf来安装依赖包。 根据用户提供的引用,特别是引用[2]中提到需要解压cp2k的源码包并进入toolchain目录,说明可能需要使用CP2K提供的工具链来编译。引用[3]中关于配置本地yum源的部分,可能需要确保系统的软件源正确设置,以便安装依赖项。此外,用户可能已经下载了CP2K的源码包,比如版本9.1,如引用[2]中的例子。 首先,我需要确定安装CP2K的依赖项。CP2K需要Fortran编译器(如gfortran)、数学库(如BLAS, LAPACK, FFTW)、MPI库(如OpenMPI)以及其他工具如CMake。可能需要安装的开发库包括libopenblas-devel、lapack-devel、fftw-devel等。然后,用户需要下载CP2K的源代码,解压后使用工具链脚本自动下载和编译所需的依赖项,或者手动配置编译选项。 接下来,根据引用[2]中的步骤,用户可能需要运行toolchain脚本来自动处理依赖关系。这个脚本通常会检查系统已安装的库,并下载和编译缺失的部分。不过,在Rocky Linux 9上,某些依赖可能需要通过系统包管理器安装,而不是从源码编译,以节省时间和避免兼容性问题。 另外,用户可能需要配置环境变量,例如设置CC和FC编译器变量,以及指定库的路径。如果使用Intel的MKL库,可能需要调整链接参数。不过,如果用户没有MKL,可以使用OpenBLAS作为替代。 还要注意,Rocky Linux 9可能默认的GCC版本是否满足CP2K的要求。如果需要更高版本的GCC,可能需要通过devtoolset来安装。此外,确保系统已经安装了必要的构建工具,如make、cmake、git等。 可能出现的问题包括依赖项缺失导致编译失败,或者工具链脚本中的某些步骤需要调整。例如,某些库的路径可能需要手动指定,或者在运行脚本时需要添加特定的选项,比如--enable-openmp以支持并行计算。 最后,编译完成后,用户需要将生成的CP2K可执行文件添加到PATH环境变量中,或者将其移动到系统目录如/usr/local/bin下,以便全局访问。 总结步骤大致如下: 1. 安装系统依赖包。 2. 下载并解压CP2K源码。 3. 运行工具链脚本安装必要的库。 4. 配置编译选项。 5. 编译并安装CP2K。 6. 验证安装是否成功。 现在需要将这些步骤具体化,确保在Rocky Linux 9上可行,并参考用户提供的引用中的相关步骤,比如配置本地yum源(如果需要),以及使用工具链脚本。</think>在Rocky Linux 9上安装CP2K需要从源码编译,需通过系统包管理工具安装依赖项,并使用CP2K提供的`toolchain`脚本构建。以下是具体步骤: --- ### **步骤1:安装系统依赖** ```bash # 更新系统并安装基础编译工具 sudo dnf update -y sudo dnf groupinstall "Development Tools" -y sudo dnf install gcc-gfortran openmpi-devel openblas-devel lapack-devel fftw-devel libsmm-devel libxc-devel cmake git wget bzip2 -y ``` --- ### **步骤2:下载CP2K源码** 从GitHub下载源码包(以v2023.2版本为例): ```bash wget https://github.com/cp2k/cp2k/releases/download/v2023.2/cp2k-2023.2.tar.bz2 tar -xvjf cp2k-2023.2.tar.bz2 cd cp2k-2023.2/tools/toolchain ``` --- ### **步骤3:使用工具链脚本安装依赖** 运行`toolchain`脚本自动编译依赖库: ```bash # 生成构建配置(示例:使用GCC和OpenMPI) ./install_cp2k_toolchain.sh --with-gcc=system --with-openmpi=system --with-fftw=system --with-openblas=system --with-libint=install --with-libxc=install ``` 脚本会生成`setup.sav`环境文件,需按提示加载环境变量: ```bash source /path/to/cp2k/tools/toolchain/install/setup ``` --- ### **步骤4:编译CP2K** 进入源码目录开始编译: ```bash cd ../../ make -j$(nproc) ARCH=Linux-x86-64-gcc VERSION="psmp" # 启用OpenMP和MPI支持 ``` 编译成功后,可执行文件位于`exe/Linux-x86-64-gcc/cp2k.psmp`。 --- ### **步骤5:验证安装** 运行测试命令检查是否正常: ```bash ./exe/Linux-x86-64-gcc/cp2k.psmp --version ``` --- ### **配置环境变量(可选)** 将CP2K添加到系统路径: ```bash echo 'export PATH=$PATH:/path/to/cp2k/exe/Linux-x86-64-gcc' >> ~/.bashrc source ~/.bashrc ``` --- ### **常见问题解决** 1. **依赖项冲突** 若系统库版本过低(如GCC < 11),需通过`devtoolset`升级: ```bash sudo dnf install centos-release-scl sudo dnf install devtoolset-11-gcc devtoolset-11-gcc-gfortran scl enable devtoolset-11 bash ``` 2. **工具链脚本报错** 手动指定库路径(例如FFTW): ```bash ./install_cp2k_toolchain.sh --with-fftw=system --math-lib=/usr/lib64 ``` ---
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

electrochemjy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值