应用程序的编译与安装¶
信息
本部分基于中国科大超算中心用户使用手册——应用程序的编译与安装修改,如有错漏请参考原出处。在此特别致以感谢。
嘉庚智算已经预置了许多专业领域的常用应用,用户可以参考软件使用说明部分提供的说明和索引进行查找。
除此而外,用户还可以自行在用户目录下编译或安装所需的软件。
常见应用程序一般以如下两种方式发布:
- 二进制方式:用户无需编译,只要解压缩后设置相关环境变量等即可。如 Gaussian 1,国内用户只能购买到已经编译好的二进制可执行文件,部分国家和地区用户可以购买到源代码。
- 源代码方式:
- 用户需要自己编译,并且可以按照需要修改编译参数以编译成最适合自己的可执行程序,之后再设置环境变量等使用,如 VASP 2。
- 源代码编译时经常用到的编译命令为
make
,编译配置文件为,请查看make
命令用法及文件说明。
应用程序一般都有官方的安装说明,建议在安装前,首先仔细阅读,比如到其官网或者查看解压缩后的目录中的类似:install*
、readme*
等文件。
二进制程序的安装¶
以二进制方式发布的程序,安装相对简单,一般只要解压缩后设置好环境变量即可,以 Gaussian09 为例:
- 将压缩包复制到某个地方,如
- 解压缩:
tar xvf gaussian09.tar.gz
3 - 设置环境变量:修改
~/.bashrc
,添加:
##Add for g09
export g09root="/opt"
export GAUSS_SCRDIR="/tmp"
. $g09root/g09/bsd/g09.profile
##End for g09
- 刷新环境设置:
. ~/.bashrc
或重新登录到当前用户。
源代码程序的安装¶
以源代码发布的程序安装相对复杂,需了解所采用的编译环境,并对配置等做相应修改(主要修改编译命令、库、头文件等编译参数等)。以VASP为例:
- 解压缩文件:
tar xvf vasp.5.lib.tar.gz
tar xvf vasp.5.2.tar.gz
- 查看说明:
install
、readme
文件等,VASP解压后的目录中未含有,可以参见上述主页文档安装。 - 生成默认配置文件:
./configure
。 - VASP不需要
./configure
命令生成,而是提供了几个针对不同系统和编译器的makefile
模板,可供用户复制修改。 -
其它程序也许需要
./configure
生成所需要的,在运行./configure
之前,一般可以运行./configure -h
查看其选项。如对Open MPI 1.6.4,可以运行以下命令生成:F77=ifort FC=ifort CC=icc CXX=icpc ./configure --prefix=/opt/openmpi-1.6.4
其中:
F77
:编译Fortran77源文件的编译器命令FC
:编译Fortran90源文件的编译器命令CC
:编译C源文件的编译器命令CXX
:编译C++源文件的编译器命令-–prefix
:安装到的目录前缀。在以普通用户身份进行安装时,请注意是否有该路径的 写入权限。
另外一些在
Makefile
中常见变量为:CPP
:预处理参数CLAGS
:C 程序编译参数CXXFLAGS
:C++ 程序编译参数F90
:编译 Fortran90 及以后源文件的编译器命令FFLAGS
:Fortran 编译参数OFLAG
:优化参数INCLUDE
:头文件参数LIB
:库文件参数LINK
:链接参数
-
修改文件配置,设定编译环境等。以 VASP 为例,对
Makefile
做如下修改: -
编译:
make
- 先在目录中执行
make
-
如未出错,则再在目录中执行
make
-
安装:
make install
。VASP不需要,有些程序需要执行此步。 - 设置环境变量:比如在中设置安装后的可执行程序目录在环境变量
PATH
中:
export PATH=$PATH:/opt/vasp.5.2
注释¶
-
Gaussian主页:http://www.gaussian.com/ ↩
-
VASP主页:http://www.vasp.at/ ↩
-
当前主流Linux系统,
tar
命令已经能自动识别.gz和.bz压缩,无需再明确添加z或j参数来指定。 ↩ -
高版本 Intel编译器支持
-mkl
选项自动指定 Intel MKL 库。 ↩ -
在Makefile中
#
表示注释 ↩