Lammps安裝教程 |
下面是在linux集羣下安裝lammps的過程,如有錯誤,望指正。
安裝平臺:centos , intel icc,ifort ,mpich3(intel編譯器編譯),fftw3(intel編譯器編譯);jpeg8a (intel編譯器編譯)。確定Icc ifort安裝在正確,並加入到環境變量, which icc命令會有正確路徑顯示, mpich3 fftw3 jpeg安裝在/opt/下面
1、 解壓,在src/目錄下輸入:make yes-all (先把所有包安裝了) 2、 在src/目錄下輸入:make no-lib (卸載一些需要鏈接外部數學庫的package) 3、 安裝lib/下的poems、mean和reax三個包: cd ~/LAMMPS/lib/meam gedit Makefile.lammps 其中 meam_SYSINC = meam_SYSLIB = -lifcore -lsvml –liompstubs5 -limf 畫線部分改爲-lgfortran meam_SYSPATH = -L/opt/intel/fce/10.0.023/lib 刪除畫線部分 make -f Makefile.ifort (安裝meam)
cd ~/LAMMPS/lib/poems make -f Makefile.icc cd ~/LAMMPS/lib/reax 更改Makefile.lammps中的 lompstub 爲 liompstubs5 make –f Makefle.ifort 然後src/目錄下make yes-poems, make yes-meam, make yes-reax
4、修改src/MAKE/目錄下的Makefile.linux如下:
CC = icc CCFLAGS = -O DEPFLAGS = -M LINK = icc LINKFLAGS = -O LIB = -lstdc++ ARCHIVE = ar ARFLAGS = -rc SIZE = size
MPI_INC = -I/opt/mpich3/include -DMPICH_SKIP_MPICXX MPI_PATH = -L/opt/mpich3/lib MPI_LIB = -lmpich -lmpl -lpthread
FFT_INC = -I/opt/fftw/include -DFFT_FFTW3 FFT_PATH = -L/opt/fftw/lib FFT_LIB = -lfftw3
JPG_INC = -I/opt/jpeg8b-intel/include JPG_PATH = -L/opt/jpeg8b-intel/lib JPG_LIB = -ljpeg 5、在src/目錄下 make linux,正常的話會生成lmp_linux可執行文件,可講其copy到bench或者example文件夾下測試。
下面是安裝過程中可能遇到的問題:Jpeg9a沒有通過,但是jpeg8b通過了,可以是因爲lammps版本比jpeg9a版本高。
錯誤:ld: cannot find –lompstub 解決辦法:http://simulation.haotui.com/viewthread.php?tid=39248 (此問題是intel編譯器遇到的問題) lib/reax/Makefile.lammps
測試:將lmp_linux複製到example/colloid文件夾,在終端運行:./lmp_linux<in.colloid 出現錯誤:./lmp_linux: error while loading shared libraries: libjpeg.so.8: cannot open shared object file: No such file or directory 解決:修改環境變量,在~/.bashrc中加入下面一行: export LD_LIBRARY_PATH=/opt/jpeg8b-intel/lib:$LD_LIBRARY_PATH LD_LIBRARY_PATH是動態庫路徑,動態庫.so文件編譯時候不需要,編譯的時候需要靜態庫.a文件。沒有.so文件但是正確指定了.a文件的路徑,可以正常編譯成可執行文件,但是運行的時候會出錯。所以需要將.so文件路徑加到LD_LIBRARY_PATH中,因爲程序運行的時候自動搜索這些路徑需找相應的.so文件。
切換到計算機點上遇到類似問題:./lmp_linux: error while loading shared libraries: libifcore.so.5: cannot open shared object file: No such file or directory 解決:在~/.bashrc 中加入下面一行: Export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013.1.117/compiler/lib/intel64:$LD_LIBRARY_PATH 計算節點上intel的動態庫路徑和主節點不一致,所以需要添加。
另外可以在~/.bashrc中加入下面兩行: export PATH=/home/wangyanfang/LAMMPS/src:$PATH export PATH=/opt/mpich3/bin:$PATH 加入第一行後,以後運行程序時不用再將lmp_linux複製到相應目錄,直接用lmp_linux<in.colloid 就行; 第二行是平行的時候用到的mpi,個人推薦mpich3,比較簡單,不用啓動mpd,直接運行mpiexec就行,例如:mpiexec -n 4 lmp_linux<in.colloid
預安裝: fftw: #yum install fftw3 fftw3-dev pkg-config
mpich 安裝教程 :https://blog.csdn.net/qq_33892998/article/details/78687529
jpeglib 教程: 下載地址 :https://sourceforge.net/projects/libjpeg/files/libjpeg/
安裝平臺:centos , gcc ,g++ ,mpich3(intel編譯器編譯),fftw3(intel編譯器編譯),jpeglib; Icc ifort安裝在/opt/intel下,mpich3 fftw3 jpeglib安裝在/share/apps/下面 特別注意:此安裝步驟是在只有gnu編譯器情況下,如果有intel編譯器,需要把intel的相關環境變量刪掉,which icc 沒有輸出的情況再編譯安裝mpich3和fftw3
1、 解壓,在src/目錄下輸入:make yes-all (先把所有包安裝了) 2、 在src/目錄下輸入:make no-lib (卸載一些需要鏈接外部數學庫的package) 3、 安裝lib/下的poems、mean和reax三個包:(http://blog.sina.com.cn/s/blog_9d62fc9601018fbc.html)或附錄A 然後src/目錄下make yes-poems。。。。。。。
4、修改src/MAKE/目錄下的Makefile.g++如下:
CC = g++ CCFLAGS = -g -O # -Wunused DEPFLAGS = -M LINK = g++ LINKFLAGS = -g -O LIB = ARCHIVE = ar ARFLAGS = -rc SIZE = size
MPI_INC = -I/share/apps/mpich3-gnu/include -DMPICH_SKIP_MPICXX MPI_PATH = -L/share/apps/mpich3-gnu/lib MPI_LIB = -lmpi
FFT_INC = -I/share/apps/fftw-gnu/include -DFFT_FFTW3 FFT_PATH = -L/share/apps/fftw-gnu/lib FFT_LIB = -lfftw3
JPG_INC = -I/share/apps/jpeg-gnu/include JPG_PATH = -L/share/apps/jpeg-gnu/lib JPG_LIB = -ljpeg
5、在src/目錄下 make g++,正常的話會生成lmp_g++可執行文件,可講其copy到bench或者example文件夾下測試。這樣安裝的在集羣計算節點也能正常運行。
附錄A:
查看已經安裝了那些包 make package-status 需要特殊安裝就 make yes-meam make yes-reax make yes-peri 即make yes-* 也可以make yes-all,會因缺少文件出錯所以不建議,也可都卸載make no-all (幾個特殊的package:meam,poems,reax,gpu,user-atc需要特別安裝,如下) 同時注意,因爲你用的是gfortran編譯器,所以裏面有個Makefile.lammps的文件需要修改一下,poems不用它用的是g++編譯器: cd /mnt/lmp/lib/meam gedit Makefile.lammps 其中 meam_SYSINC = meam_SYSLIB = -lifcore -lsvml –lompstub-limf 畫線部分改爲-lgfortran meam_SYSPATH = -L/opt/intel/fce/10.0.023/lib 刪除畫線部分 make -f Makefile.gfortran (安裝meam) cd /mnt/lmp/lib/poems make -f Makefile.g++ cd /mnt/lmp/lib/reax gedi |
Lammps安裝教程
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.