---
title: 编译和安装
description: "1. 使用PuTTY工具，以root用户登录服务器。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpcindapp/prtg-osc/kunpengcp2k7_02_0018.html
sourcePath: /source/zh/kunpenghpcs/hpcindapp/prtg-osc/kunpengcp2k7_02_0018.html
indexId: be0c7bac346c09a8110ee29b9a8368d6d00c7e2de3180c6ffbbdeb73f7010d4a67
---
# 编译和安装

#### 操作步骤

1. 使用PuTTY工具，以root用户登录服务器。
2. 执行以下命令解压CP2K安装包。

```
tar xvf cp2k-7.1.0.tar.gz
```


3. 执行以下命令进入解压后的目录。

```
cd cp2k-7.1.0/arch
```


4. 执行以下命令修改配置文件。

  a. 打开配置文件。

```
vi Linux-x86-64-gfortran.psmp
```


  b. 按“i”进入编辑模式，修改如下内容。

```
GNU_PATH      = /
path/to/EXTRA/
MATHLIBPATH  =
/path/to/EXTRA/
mathlib
include     $(GNU_PATH)/plumed252/lib/plumed/src/lib/Plumed.inc.static
ELPA_VER    = 2019.05.001
ELPA_INC    = $(GNU_PATH)/elpa/include/elpa_openmp-$(ELPA_VER)
ELPA_LIB    = $(GNU_PATH)/elpa/lib
FFTW_INC    = $(GNU_PATH)/fftw3/include
FFTW_LIB    = $(GNU_PATH)/fftw3/lib
LIBINT_INC   = $(GNU_PATH)/libint2/include
LIBINT_LIB   = $(GNU_PATH)/libint2/lib
LIBXC_INC    = $(GNU_PATH)/libxc434/include
LIBXC_LIB    = $(GNU_PATH)/libxc434/lib
SPGLIB_INC   = $(GNU_PATH)/spglib112/include
SPGLIB_LIB   = $(GNU_PATH)/spglib112/lib
CFLAGS       = -O2 -g -mtune=native
DFLAGS       = -D__ELPA -D__FFTW3 -D__LIBINT -D__LIBXC
DFLAGS       += -D__MPI_VERSION=3 -D__PLUMED2 -D__SPGLIB
DFLAGS       += -D__parallel -D__SCALAPACK
FCFLAGS      = $(CFLAGS) $(DFLAGS)
FCFLAGS      += -ffree-form -ffree-line-length-none
FCFLAGS      += -fopenmp
FCFLAGS      += -ftree-vectorize -funroll-loops -std=f2008
FCFLAGS      += -I$(ELPA_INC)/elpa -I$(ELPA_INC)/modules
FCFLAGS      += -I$(FFTW_INC) -I$(LIBINT_INC) -I$(LIBXC_INC)
LDFLAGS      = $(FCFLAGS)
LIBS        = $(PLUMED_DEPENDENCIES) -lgsl -lgslcblas -lz
LIBS        += $(ELPA_LIB)/libelpa_openmp.a
LIBS        += $(LIBXC_LIB)/libxcf03.a
LIBS        += $(LIBXC_LIB)/libxc.a
LIBS        += $(LIBINT_LIB)/libint2.a
LIBS        += $(SPGLIB_LIB)/libsymspg.a
LIBS        += $(FFTW_LIB)/libfftw3.a
LIBS        += $(FFTW_LIB)/libfftw3_threads.a
LIBS        += $(MATHLIBPATH)/libscalapack.a
LIBS       += $(MATHLIBPATH)/liblapack.a
LIBS       += $(MATHLIBPATH)/librefblas.a
LIBS       += -ldl -lpthread -lstdc++
```


5. 执行以下命令进入“/exts/dbcsr”目录。

```
cd
/path/to/CP2K
/
exts/dbcsr
cp dbcsr-2.1.0-rc12.tar.gz ./
```


6. 执行以下命令解压“dbcsr-2.1.0-rc12.tar.gz”安装包并进入解压后的目录。

```
tar -xvf dbcsr-2.1.0-rc12.tar.gz
cd dbcsr-2.1.0-rc12
```


7. 执行以下命令把“dbcsr-2.1.0-rc12”的所有文件移到上一目录“dbcsr”中。

```
mv * ../
```


8. 执行以下命令进行安装编译。

```
make -j 16 ARCH=Linux-x86-64-gfortran VERSION=psmp
```
