当前位置: 团队概况>>下载中心>>正文

 

Lammps安装教程
2015-04-26 21:49  
下面是在linux集群下安装lammps的过程,如有错误,望指正。

安装平台:centos  intel iccifort mpich3intel编译器编译),fftw3intel编译器编译);jpeg8a intel编译器编译)。确定Icc ifort安装在正确,并加入到环境变量, which icc命令会有正确路径显示, mpich3 fftw3 jpeg安装在/opt/下面

 

 

1、  解压,在src/目录下输入:make yes-all (先把所有包安装了)

2、  src/目录下输入:make no-lib (卸载一些需要链接外部数学库的package

3、  安装lib/下的poemsmeanreax三个包:

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可执行文件,可讲其copybench或者example文件夹下测试。

 

 

下面是安装过程中可能遇到的问题:

Jpeg9a没有通过,但是jpeg8b通过了,可以是因为lammps版本比jpeg9a版本高。

 

 

错误:ld: cannot find –lompstub

解决办法:

(此问题是intel编译器遇到的问题)

lib/reax/Makefile.lammps
-lompstub -> -liompstubs5
lib/meam/Makefile.lammps
-lompstub -> -liompstubs5

 

 

测试:将lmp_linux复制到example/colloid文件夹,在终端运行:./lmp_linux

出现错误:./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 就行;

第二行是平行的时候用到的mpi,个人推荐mpich3,比较简单,不用启动mpd,直接运行mpiexec就行,例如:mpiexec -n 4 lmp_linux

 

 

 

 

 

 

 

安装平台:centos  gcc ,g++ mpich3intel编译器编译),fftw3intel编译器编译),jpeglib

Icc ifort安装在/opt/intel下,mpich3 fftw3 jpeglib安装在/share/apps/下面

特别注意:此安装步骤是在只有gnu编译器情况下,如果有intel编译器,需要把intel的相关环境变量删掉,which icc 没有输出的情况再编译安装mpich3fftw3

 

1、  解压,在src/目录下输入:make yes-all (先把所有包安装了)

2、  src/目录下输入:make no-lib (卸载一些需要链接外部数学库的package

3、  安装lib/下的poemsmeanreax三个包:()或附录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++可执行文件,可讲其copybench或者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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

关闭窗口

 师资队伍
· 王德真
· 孙继忠
· 王艳辉
· 戴舒宇
· 刘升光
· 庄娟
· 王奇
· 张佼
· 王真厚
· 桑超峰
组内动态

 

· 2023年秋季PSI&APD课题组新生见面会...
· 团队成员参加磁约束核聚变装置等离...
· 中国科学技术大学毛世峰副教授访问...
· 西安航天动力研究所谭畅研究员访问...
· 2023年国家磁约束核聚变能发展研究...

地 址: 辽宁省大连市高新园区凌工路2号  电 话:0411-84707981 E-mail:sang@dlut.edu.cn; lidazheng@mail.dlut.edu.cn

Copyright 2013 大连理工大学 物理学院 王德真科研小组版权所有