-
简介
Gromcas是当下用于分子模拟和数据分析的软件,最重要的是,这个软件的源代码是开源的。本次文章介绍如何在Centos7系统里安装Gromacs,这里主要内容借鉴于思想家公社的sob老师。
gromacs的源码包可以在官网直接下载,源码包的体积不大,目前最新到2021版本。我的方法安装成功的是2018版。
-
安装cmake 3.x版本
Centos 7 自带的cmake是2.x版本,不适应于Gromacs的编译。安装cmake 3.x的方法如下:
在cmake的官网里下载cmake3.x版本的tar.gz包:
在虚拟机里使用tar命令解压这个tar.gz包到当前目录:
tar -zxf cmake-3.23.1-linux-x86_64.tar.gz -C .
进入解压后的目录,运行命令:
./bootstrap --prefix=/usr/local/cmake3 --DCMAKE_USE_OPENSSL=OFF
make && make install
--prefix指定安装目录,在/usr/local/cmake3文件夹里,就会生成一个bin文件夹,里面就会存在我们要的cmake3.x版的命令。
我们用ln命令将bin文件夹里的cmake在环境变量的/usr/bin里生成链接文件cmake3,这样就可以方便在命令行里调用3.x版的cmake:
ln -s /usr/local/cmake3/bin/cmake /usr/bin/cmake3
ll命令查看这个链接文件,检查cmake3版本:
ll /usr/bin/cmake3
cmake3 --version
安装没有问题,就可以用rm命令将源码包和解压文件夹删掉,回到存放cmake源码包的文件夹:
rm -Rf cmake*
-
安装傅里叶变换库FFTW
FFTW是gromacs的相关依赖,在gromacs安装时,也可以自动安装,这里介绍手动安装FFTW。
同样必要搜索FFTW,在官网里下载FFTW的tar.gz包:
同样是在虚拟机里用tar命令解压后,编译安装:
tar -zxf fftw-3.3.10.tar.gz -C .
cd fftw-3.3.10
./configure --prefix=/usr/local/fftw --enable-sse2 --enable-avx --enable-float --enable-shared
make -j 4 install
编译需要一段时间,同样,命令会把fftw安装在/usr/local/fftw目录里,确认无误后,删掉源码包
这里对gromcas的编译依赖于python3版本和gcc的高版本(最低要求是5.x版本)
但是在Centos里,默认的python是2.x版本,gcc默认是4.x版本。使用yum对gcc的升级最多到4.x版本。
-
安装python3
同样是在必应搜索python,在官网里下载python3的tar.gz包:
同样是tar命令解压到当前文件夹,进入到解压文件夹里进行编译:
tar -zxf Python-3.7.12.tgz -C .
cd Python-3.7.12 && ./configure prefix=/usr/local/python3
进行安装:
make && make -j 4 install
编译安装成功后,进入到/usr/local/python3文件夹里查看是否成功安装:
cd /usr/local/python3/bin && ll
使用软连接将python3编译器和pip链接到/usr/bin里,方便在命令行里调用:
ln -s /usr/local/python3/bin/python* /usr/bin/python3
ln -s /usr/local/python3/bin/pip* /usr/bin/pip3
最后在命令行里输入python3查看能否打开python3编译器:
python3
编译安装gromacs,会遇到python版本太低不可用的情况,可以暂时将python3链接到/usr/bin/python,暂时代替系统自带的python2.x,安装完毕后需要重新改回来,毕竟系统下很多程序的正常运行依赖于python2,比如yum。
-
更新gcc版本
若是重新安装gcc,从而提高gcc的版本,就很费时费磁盘空间,这里介绍一种普遍的方法来暂时的更新gcc:
yum安装相关依赖,将gcc提高到8.x版本:
yum install centos -release-scl -y
yum install devtoolset-8 -y
安装成功后,输入如下命令,打开一个新bash,在里面暂时更新gcc的版本:
scl enable devtoolset-8 bash
查看gcc的版本:
gcc --version
若是上面的方法不能更新gcc,可以使用如下方法使用devtoolset-8的内置脚本:
source /opt/rh/devtoolset-8/enable
这个就不会新开bahs,检查gcc版本:
gcc --version
-
安装gromcas
建立编译的文件夹:
mkdir mybuild && cd ./mybuild
将前面安装的FFTW声明为cmake可以调用的环境变量:
export CMAKE_PREFIX_PATH=/usr/local/fftw
进行编译和安装:
cmake3 .. -DCMAEK_INSTALL_PREFIX=/usr/local/gromacs2018 && makeinstall
等待编译,编译完成后,在家目录的.bashrc文件里添加gmx的环境变量:
vim ~/.bashrc
在文件末尾追加如下命令:
source /usr/local/gromacs2018/bin/GMXRC
重新运行一遍.bashrc文件,输入gmx --version查看是否安装和配置成功:
source ~/.bashrc && gmx --version
没有问题,就可以把相关的压缩包和解压文件删除掉。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)