#安装lammps-7Aug19(版本:2019-08-07)
为了方便,我创建了一个文件夹/home/hsiung/software/lammps,所有的文件下载和安装都在这个文件夹里
cat /etc/redhat-release
使用cat命令查看版本:CentOS Linux release 7.9.2009 (Core)
1、openmpi下载安装(mpich也可以,具体可见下面lammps-10Aug15安装流程)
openmpi官网 https://www.open-mpi.org/software/ompi/v4.1/
这里我下载的是openmpi-4.1.1.tar.gz,并上传到文件夹中
#解压缩
tar -zxvf openmpi-4.1.1.tar.gz
#建文件夹用来作为openmpi的安装位置
mkdir openmpi411
cd openmpi-4.1.1
./configure --prefix=/home/hsiung/software/lammps/openmpi411
make
make install
#如果没报错就基本安装成功了,之后就是添加环境变量
vim ~/.bashrc
export PATH=/home/hsiung/software/lammps/openmpi411/bin:$PATH
export LD_LIBRARY_PATH=/home/hsiung/software/lammps/openmpi411/lib/:$LD_LIBRARY_PATH
source ~/.bashrc
2、fftw下载安装
fftw官网 https://www.fftw.org/download.html
这里我下载的是fftw-3.3.10.tar.gz,并上传到文件夹中
#解压缩
tar -zxvf fftw-3.3.10.tar.gz
#建文件夹用来作为fftw3310的安装位置
mkdir fftw3310
cd fftw-3.3.10
./configure --prefix=/home/hsiung/software/lammps/fftw3310
make
make install
#如果没报错就基本安装成功了,之后就是添加环境变量
vim ~/.bashrc
export PATH=/home/hsiung/software/lammps/fftw3310/bin:$PATH
export LD_LIBRARY_PATH=/home/hsiung/software/lammps/fftw3310/lib:$LD_LIBRARY_PATH
source ~/.bashrc
3、lammps软件包下载
lammps官网 https://download.lammps.org/tars/index.html
下载lammps-7Aug2019.tar.gz安装包并上传到文件夹中
#解压缩
tar -zxvf lammps-7Aug2019.tar.gz
cd /home/hsiung/software/lammps/lammps-7Aug19/src/MAKE
#修改Makefile.mpi文件
# MPI library
# see discussion in Section 2.2 (step 5) of manual
# MPI wrapper compiler/linker can provide this info
# can point to dummy MPI library in src/STUBS as in Makefile.serial
# use -D MPICH and OMPI settings in INC to avoid C++ lib conflicts
# INC = path for mpi.h, MPI compiler settings
# PATH = path for MPI library
# LIB = name of MPI library
MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/home/hsiun/software/lammps/openmpi411/include
MPI_PATH = -L/home/hsiung/software/lammps/openmpi411/lib
MPI_LIB = -lmpi
# FFT library
# see discussion in Section 2.2 (step 6) of manual
# can be left blank to use provided KISS FFT library
# INC = -DFFT setting, e.g. -DFFT_FFTW, FFT compiler settings
# PATH = path for FFT library
# LIB = name of FFT library
FFT_INC = -DFFT_FFTW3 -I/home/hsiung/software/lammps/fftw3310/include
FFT_PATH = -L/home/hsiung/software/lammps/fftw3310/lib
FFT_LIB = -lfftw3
#然后进入src目录:
cd ..
make yes-all
make no-lib
make mpi
报错解决
#此处如果没有报错,会生成一个lmp_mpi文件
ls -ali lmp_mpi
697286107 -rwxrwxr-x. 1 hsiung hsiung 104631768 Nov 2 08:45 lmp_mpi
#此处如果报错
make[1]: *** [Makefile:89: ../lmp_mpi] Error 1
make[1]: Leaving directory '/home/hsiung/software/lammps/lammps-7Aug19/src/Obj_mpi'
make: *** [Makefile:212: mpi] Error 2
#清除旧的编译文件
make clean-all
#检查一下Makefile.mpi文件是否有修改不当的地方
make mpi
#添加环境变量
vim ~/.bashrc
export PATH=/home/hsiung/software/lammps/lammps-7Aug19/src:$PATH
source ~/.bashrc
#测试
cd /home/hsiung/software/lammps/lammps-7Aug19/examples
#例如进入melt
cd /home/hsiung/software/lammps33/lammps-7Aug19/examples/melt
mpirun -np 1 lmp_mpi < in.melt
#文件删除(因为磁盘容量有限,可根据自身需要将tar.gz和解压缩的文件删除)
rm-rf lammps-7Aug2019.tar.gz lammps-7Aug2019 fftw-3.3.10.tar.gz fftw-3.3.10 openmpi-4.1.1.tar.gz openmpi-4.1.1
#安装lammps-10Aug15(版本:2015-08-10)
%%%因为要用到别人开发的包,发现19版装完一直报错,就看了下作者开发的包的日期,所以就尝试安装了对应日期版本的lammps
1、mpich下载安装(此处没用openmpi是因为lammps-10Aug15手册(解压的包里就有/doc/Manual.pdf)中有提到可能不兼容,所以选择安装mpich)
mpich官网 https://www.mpich.org/static/downloads/
这里我下载的是mpich-3.2.1.tar.gz,并上传到文件夹中
#解压缩
tar -zxvf mpich-3.2.1.tar.gz
#建文件夹用来作为mpich的安装位置
mkdir mpich321
cd mpich-3.2.1
./configure --prefix=/home/hsiung/software/lammps/mpich321
make
make install
#如果没报错就基本安装成功了,之后就是添加环境变量
vim ~/.bashrc
export MPI=/home/hsiung/software/lammps/mpich321
export PATH=$MPI/bin:$PATH
export LD_LIBRARY_PATH=$MPI/lib:$LD_LIBRARY_PATH
export MANPATH=$MANPATH:$MPI/share/man
export INFOPATH=$INFOPATH:$MPI/share/man
export INCLUDE=$MPI/include:$INCLUDE
source ~/.bashrc
2、fftw下载安装(具体可见上面lammps-7Aug19安装流程)
3、lammps软件包下载
(具体可见上面lammps-7Aug19安装流程)
#修改Makefile.mpi文件
# LAMMPS ifdef settings
# see possible settings in Section 2.2 (step 4) of manual
LMP_INC = -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64 ###老版本这里不全,编译时可能会出现'Please set -DLAMMPS_MEMALIGN=64 in CCFLAGS for your LAMMPS makefile'
# MPI library
# see discussion in Section 2.2 (step 5) of manual
# MPI wrapper compiler/linker can provide this info
# can point to dummy MPI library in src/STUBS as in Makefile.serial
# use -D MPICH and OMPI settings in INC to avoid C++ lib conflicts
# INC = path for mpi.h, MPI compiler settings
# PATH = path for MPI library
# LIB = name of MPI library
MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/home/hsiung/software/lammps/mpich321/include
MPI_PATH = -L/home/hsiung/software/lammps/mpich321/include
MPI_LIB = -lmpi
# FFT library
# see discussion in Section 2.2 (step 6) of manual
# can be left blank to use provided KISS FFT library
# INC = -DFFT setting, e.g. -DFFT_FFTW, FFT compiler settings
# PATH = path for FFT library
# LIB = name of FFT library
FFT_INC = -DFFT_FFTW3 -I/home/hsiung/software/lammps/fftw3310/include
FFT_PATH = -L/home/hsiung/software/lammps/fftw3310/lib
FFT_LIB = -lfftw3
#然后进入src目录:
cd /home/hsiung/software/lammps/lammps-10Aug15/src
make yes-ASPHERE yes-BODY yes-CLASS2 yes-COLLOID yes-COMPRESS yes-CORESHELL yes-DIPOLE yes-GRANULAR yes- KSPACE yes-MANYBODY yes-MC yes-MISC yes-MOLECULE yes-MPIIO yes-OPT yes-PERI yes-QEQ yes-REPLICA yes-RIGID yes-SHOCK yes-SNAP yes-SPIN yes-SRD
#编译poems库
cd /home/hsiung/software/lammps/lammps-10Aug15/lib/poems
rm *.o
make -f Makefile.g++
cd /home/hsiung/software/lammps/lammps-10Aug15/src
make yes-poems
#编译mean库
cd /home/hsiung/software/lammps/lammps-10Aug15/lib/mean
rm *.o
make -f Makefile.gfortran
cp Makefile.lammps.gfortran Makefile.lammps
cd /home/hsiung/software/lammps/lammps-10Aug15/src
make yes-meam
#编译reax库
cd /home/hsiung/software/lammps/lammps-10Aug15/lib/reax
rm *.o
make -f Makefile.gfortran
cp Makefile.lammps.gfortran Makefile.lammps
cd /home/hsiung/software/lammps/lammps-10Aug15/src
make yes-reax
#编译user库
cd /home/hsiung/software/lammps/lammps-10Aug15/src
make yes-USER-BOCS yes-USER-CGDNA yes-USER-CGSDK yes-USER-DIFFRACTION yes-USER-DPD yes-USER-DRUDE yes-USER-EFF yes-USER-FEP yes-USER-INTEL yes-USER-LB yes-USER-MANIFOLD yes-USER-MEAMC yes-USER-MESO yes-USER-MGPT yes-USER-MISC yes-USER-MOFFF yes-USER-MOLFILE yes-USER-OMP yes-USER-PHONON yes-USER-PTM yes-USER-QTB yes-USER-REAXC yes-USER-SMTBQ yes-USER-SDPD yes-USER-SPH yes-USER-TALLY yes-USER-UEF
make mpi
#之后的步骤参考lammps-7Aug19安装流程
学习笔记(如有侵权,联系必删)
参考资料
lammps安装有人会嘛?可以教我嘛? - yellow fish的回答 - 知乎
https://www.zhihu.com/question/378572817/answer/2847696158
lammps安装有人会嘛?可以教我嘛? - 艮泰科技的回答 - 知乎
https://www.zhihu.com/question/378572817/answer/2278958243