Centos7 安裝amber16
1.准備下載好的amber(Amber16.tar.bz2)及tools(AmberTools16.tar.bz2)安裝包:
$ cd MySoftware_home
$ tar xvfj Amber16.tar.bz2
$ tar xvfj AmberTools16.tar.bz2
兩個壓縮包會解壓到一個名為amber16的文件夾里
2.設置AMBERHOME主目錄環境變量:
1 $ export AMBERHOME=/home/myname/amber16 # (for bash, zsh, ksh, etc.) 別忘記更改myname為自己的用戶名
3.安裝依賴的軟件及軟件庫:
1 $ sudo yum install gcc gcc-gfortran gcc-c++ flex tcsh zlib-devel bzip2-devel libXt-devel libXext-devel libXdmcp-devel tkinter openmpi openmpi-devel perl perl-ExtUtils-MakeMaker
4. 切換到amber目錄,執行編譯腳本:
$ cd $AMBERHOME $ ./configure --help # 執行此命令可以看到不同的編譯模式,不同的參數設置,我以前也什么都不懂,看完后理解就好很多 $ ./configure gnu # 使用gcc編譯器編譯
此命令會產生出amber.sh和amber.csh文件,這兩個文件可以用於添加amber所需的環境變量。
5.添加可執行文件,python,庫等環境變量信息:
$ source amber.sh # 添加環境變量信息,也可以自己手動在~/.bashrc中添加
6.編譯安裝:
$ make install # 編譯安裝
7.編譯測試:
$ make test # 編譯測試
8.多線程(openmpi)編譯安裝:
8.1 下載openmpi1.[5-9]安裝包:
網址:https://www.open-mpi.org/software/ompi/v1.6/
版本要求在$AMBERHOME/AmberTools/src/configure_openmpi中有說明, mpidirs=`/bin/ls -d openmpi-1.[5-9]*/ 2>/dev/null | tail -n 1`
8.2 解壓openmpi解壓到 $AMBERHOME/AmberTools/src:
$ tar zxvf openmpi-1.6.5.tar.gz
8.3 在src目錄編譯,(如果本身系統已經裝了openmpi合適版本,which mpirun命令返回openmpi的目錄即可,就可以忽略8.2及8.3步驟):
1 $ ./configure_openmpi gnu (intel) # 編譯,此命令會產生出amber.sh和amber.csh文件,這兩個文件可以用於添加amber所需的環境變量。
8.4 添加環境變量(在前文定義好了amber相關環境變量的基礎上):
$ source $AMBERHOME/AmberTools/src/amber.sh
也可以手動添加環境變量:
1 $ export MPI_HOME=$AMBERHOME/AmberTools 2 $ export PATH=$PATH:$MPI_HOME/bin 3 $ export LD_LIBRARY_PATH=$MPI_HOME/lib:$LD_LIBRARY_PATH 4 $ export DO_PARALLEL="mpirun -np 4" # Note the value below may depend on your MPI implementation,因為某些測試中需要用到的線程較多,所以最好設置4個或8個
8.5 配置openmpi后,回到$AMBERHOME編譯amber:
$ cd $AMBERHOME
$ ./configure -mpi gnu
8.6 Amber安裝測試:
$ make install
$ make test
9.GPU版本編譯安裝:
9.1 顯卡驅動及cuda8.0安裝:
可參見鏈接:https://www.cnblogs.com/mar-q/p/7482720.html
設置環境變量,尤其是要設置CUDA_HOME:
#CUDA export CUDA_HOME=/usr/local/cuda
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib:$LD_LIBRARY_PATH
9.2 切換到amber目錄,編譯:
$ cd $AMBERHOME $ make clean $ ./configure -cuda gnu $ ./configure -cuda -mpi gnu
9.3 安裝測試
$ make install
$ make test
注:單行版及串行版都需要編譯,這樣可執行程序才會不缺少。
錯誤解決:
1. 如果編譯過程出現Fatal Error: File 'netcdf.mod' opened at (1) is not a GFORTRAN module file錯誤:
這個錯誤需要回到$AMBERHOME/include文件夾內,把所有的netcdf.*文件全部刪除,然后再重復上面的步驟5-6
2. make install過程中出現一個奇怪的錯誤,編譯安裝時,安裝程序暫停止在以下命令,並且一天都跑不過去:
( cd parmed && /home/wangq/Programs/amber16/bin/amber.python setup.py install --no-setuptools -f --prefix=/home/wangq/Programs/amber16 --install-scripts=/home/wangq/Programs/amber16/bin )
按下 ctrl+c 大約5次,結束會程序,並報下面錯誤:
[wangq@localhost parmed]$ /home/wangq/Programs/amber16/bin/amber.python setup.py install --no-setuptools -f --prefix=/home/wangq/Programs/amber16 --install-scripts=/home/wangq/Programs/amber16/bin Traceback (most recent call last): File "setup.py", line 145, in <module> version=versioneer.get_version(), File "/home/wangq/Programs/amber16/AmberTools/src/parmed/versioneer.py", line 1427, in get_version return get_versions()["version"] File "/home/wangq/Programs/amber16/AmberTools/src/parmed/versioneer.py", line 1401, in get_versions pieces = from_vcs_f(cfg.tag_prefix, root, verbose) File "/home/wangq/Programs/amber16/AmberTools/src/parmed/versioneer.py", line 1068, in git_pieces_from_vcs pieces["distance"] = int(count_out) # total number of commits ValueError: invalid literal for int() with base 10: "spawn ssh git@172.16.25.11\r\ngit@172.16.25.11's password: \r\n^Z^Z^Z^C"
經過多天的解決及google,還是沒有發現解決問題的方法。。。
偶然情況下,在命令暫停時,按了多次 ctrl+z 及一次 ctrl+c 及多次 enter 后,編譯過程進行到了下一步:
running install
running build
running build_py
但是程序又會停止在這一步,不動了。。偶然嘗試,又按一次 ctrl+c 后,編譯竟然順利通過。
最后通過嘗試,確定了解決方法,即:
當程序卡在第一階段時,按一次 ctrl+c ,再按多次 enter ,就會到達第二階段,然后再按多次 enter ,編譯就會通過了,后來發現很多這種問題都可以通過這種方法解決,可能是自己電腦的問題!