一览
前言
SIESTA是材料计算常用软件。区别于VASP的平面波基底,SIESTA基于原子轨道基底,且是免费的。科学研究人员可以免费获得其源码及赝势文件。
作为刚入门材料计算的小白,在此贴出安装SIESTA的整个流程,希望能给后来者以指引。
本次安装基于CentOS7.4 版本。因为是安装在所里服务器集群上,所以没有root权限,无法使用yum指令,很多都只能下载-编译-安装。如果你是安装在自己的pc上,可以自行查询更简单的yum指令,并相应配置环境变量。
[zwnie@admin1 gcc_install]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core
CentOS 7 下SIESTA的安装配置
- GCC
- OpenMPI
- 数学库(BLAS,LAPACK,ScaLAPACK,BLACS)
- SIESTA
gcc的安装
gcc用来编译C/C++, FORTRAN等语言,可以看到目前系统上已存在 gcc 4.8.5,虽然它足以承载本次SIESTA安装要求,但为了把安装流程完整走一遍,我们本次安装最新版的 gcc 8.3.0,注意要求在系统已存在编译器的情况下安装。
安装gcc依赖库文件
gcc的安装需要GMP, MPFR, MPC这三个库,不然接下来的配置过程会报错如下
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations
可在ftp://gcc.gnu.org/pub/gcc/infrastructure/找到库的压缩文件
[zwnie@admin1 ~]$ mkdir lib
[zwnie@admin1 ~]$ cd lib/
[zwnie@admin1 lib]$ wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
[zwnie@admin1 lib]$ wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
[zwnie@admin1 lib]$ wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz
[zwnie@admin1 lib]$ tar -jxvf gmp-6.1.0.tar.bz2
[zwnie@admin1 lib]$ tar -jxvf mpfr-3.1.4.tar.bz2
[zwnie@admin1 lib]$ tar -xzvf mpc-1.0.3.tar.gz
[zwnie@admin1 lib]$ mkdir gmp_install
[zwnie@admin1 lib]$ cd gmp_install/
[zwnie@admin1 gmp_install]$ ../gmp-6.1.0/configure --prefix=/public/home/zwnie/lib/gmp_install
[zwnie@admin1 gmp_install]$ make
[zwnie@admin1 gmp_install]$ make install
[zwnie@admin1 gmp_install]$ mkdir ../mpfr_install
[zwnie@admin1 gmp_install]$ cd ../mpfr_install/
[zwnie@admin1 mpfr_install]$ ../mpfr-3.1.4/configure --prefix=/public/home/zwnie/lib/mpfr_install --with-gmp=/public/home/zwnie/lib/gmp_install
[zwnie@admin1 mpfr_install]$ make
[zwnie@admin1 mpfr_install]$ make install
[zwnie@admin1 mpfr_install]$ mkdir ../mpc_install
[zwnie@admin1 mpfr_install]$ cd ../mpc_install/
[zwnie@admin1 mpc_install]$ ../