本帖最后由 qmlearner 于 2021-2-4 13:55 编辑
编译环境:Red Hat 4.8.5-11, x86_64 本帖中假设普通用户的家目录为~/qmlearner (根据abin大神建议,加个小提示:在个人实际安装过程中,此处和后面的"~"都需替换为自己的$HOME路径)
去http://www.open-mpi.org下载openmpi-3.1.4.tar.bz2(笔者没有测试其他版本),解压到~/qmlearner,进入解压目录,运行./configure --prefix=~/qmlearner/install/openmpi314 --disable-builtin-atomics;make all install。安装完成之后openmpi的所有文件被装到~/qmlearner/install/openmpi314中。
我的操作系统是bshell,vim编辑.bashrc文件,将下面两行加进去: export PATH=~/qmlearner/install/openmpi314/bin:$PATH export LD_LIBRARY_PATH=~/qmlearner/install/openmpi314/lib:$ LD_LIBRARY_PATH 这样设置是为了将安装的openmpi3.1.4优先级盖过集群管理员已经安装的版本。(如何设置优先级可参考社长安装orca帖子的最后部分)
source ~/.bashrc,以上设置生效,输入mpiexec –V,显示出openmpi的版本,说明安装成功。
去官网下载AmberTools19.tat.bz2 tar xvjf AmberTools19.tat.bz2 解压得到~/qmlearner/amber18 在.bashrc里添加以下两行: export AMBERHOME=~/qmlearner/amber18 test –f ~/qmlearner/amber18/amber.sh && source ~/qmlearner/amber18/amber.sh source ~/.bashrc,使环境变量生效
############## 串行版本编译: ############## cd ~/qmlearner/amber18 如果直接执行./configure gnu大概率会出现问题,首先第一个问题就是miniconda安装不了,这个比较好理解,因为大部分集群都是不连外网的(安全问题),所以下载不了miniconda。解决这个问题可以自己去下载miniconda,然后安装,也可以直接用集群上的python,因为我们的集群有anaconda3,所以我用的anaconda3/bin/python3。
我还出现了另一个问题,如下: Could not find the X11 libraries; you may need to edit config.h to set the XHOME and XLIBS variables. Error: The X11 libraries are not in the usual location ! To search for them try the command: locate libXt On new Fedora OS's install the libXt-devel libXext-devel libX11-devel libICE-devel libSM-devel packages. On old Fedora OS's install the xorg-x11-devel package. On RedHat OS's install the XFree86-devel package. On Ubuntu OS's install the xorg-dev and xserver-xorg packages. 如果是root用户,比如ubuntu root用户,可以直接按手册P23 step3安装一下所需的库。没root权限的普通用户可以按提示安装,比如我尝试了安装XFree86-devel,不幸的是它又需要更多的依赖库,它的依赖库也需要其他的依赖库。最后我放弃了安装XFree86-devel,这就意味着不能安装使用X11的模块,比如xleap,不知道这个对计算有没有影响,有了解的可以交流一下(如果对计算没有影响,可以在自己PC上安装一个可以使用X11的版本,以满足需要)。所以最终的配置命令如下: ./configure –noX11 --with-python ~/anaconda3/bin/python3 gnu 等待配置完成,因为不能连网的原因,一些补丁也不能安装。
运行make install进行编译。
运行make test进行测试。如果出现以下错误信息: ./test_at_serial.sh Error: Could not import Amber Python modules! Probably your Amber Python environment was not set up correctly. ……… 并且执行amber.python -c "from parmed.scripts import clapp; print(clapp)"出现以下类似信息: Traceback (most recent call last): File "<string>", line 1, in <module> File "~/amber18/lib/python2.7/site-packages/ParmEd-3.2.0-py2.7-linux-x86_64.egg/parmed/__init__.py", line 22, in <module> from parmed import unit, utils File "~/amber18/lib/python2.7/site-packages/ParmEd-3.2.0-py2.7-linux-x86_64.egg/parmed/unit/__init__.py", line 27, in <module> from parmed.unit.unit import Unit, is_unit File "~/amber18/lib/python2.7/site-packages/ParmEd-3.2.0-py2.7-linux-x86_64.egg/parmed/unit/unit.py", line 35, in <module> from parmed.utils.six import iterkeys File "~/amber18/lib/python2.7/site-packages/ParmEd-3.2.0-py2.7-linux-x86_64.egg/parmed/utils/__init__.py", line 3, in <module> from parmed.utils.pairlist import find_atom_pairs File "~/amber18/lib/python2.7/site-packages/ParmEd-3.2.0-py2.7-linux-x86_64.egg/parmed/utils/pairlist.py", line 5, in <module> import numpy as np ImportError: No module named numpy
安装一下numpy,再make test
############## 并行版本编译: ############## ./configure –mpi –noX11 --with-python ~/anaconda3/bin/python3 gnu make install 在bin目录下生成cpptraj.MPI、mdgx.MPI、MMPBSA.py.MPI、sander.LES.MPI、sander.MPI。社长安装Amber14的帖子里还有pmemd.amoeda.MPI、pmemd.MPI,我这里没有,不知道会不会有问题。
用4核进行测试 export DO_PARALLEL=“mpirun –np 4” make test 顺利通过
####################### 编译NAB和Cpptraj的openMP并行版: ####################### ./configure –openmp –noX11 --with-python ~/anaconda3/bin/python3 gnu make openmp
|