需要在系统上预先装有mpich和fftw的开发库,而且fftw还要求不是最新的3.x版,而是2.x。
复制内容到剪贴板
代码:
apt-get install fftw2 libmpich1.0-dev gfortran下载并解压缩源文件包以后,进入解压后路径下的src/目录,只要简单的“make debian”就可以得到可执行文件(lmp_debian)
得到lmp_debian之后,就可以运行那些例子了。但是你并没有得到lammps所支持的所有功能。lammps支持package,有系统自带的也有用户自行开发的。默认只编译"kspace", "manybody", 和"molecule"三个系统自带的包。其他还有一些“ asphere class2 colloid dipole dpd granular meam opt poems xtc”包没有编译进可执行程序,也就是说你不能使用那些额外功能。 如果需要全部编译。这可以通过先“make yes-all”然后“make clean”,"make debian"来完成。
稍微有一点麻烦的是,有两个包“meam”和“poems”是第三方开发的独立程序,源代码并没有在src目录下。你需要到../lib/中才可以看见它们的目录,需要分别编译。
先说poems,应该用用于刚体模拟的,进入lib/poems/后,直接“make Makefile.g++”
再说编译meam,这个meam是fortran写的,前面由于已经安装了gfortran,作者也给了Makefile.gfortran,所以只要“make Makefile.gfortran”即可得到libmeam.a了
到这里,我们准备好了所有的lammps附属包,可以重新编译最终的可执行文件了。为了能让编译器找到需要库和头文件,我们还需手工修改一下makefile。我这里就是修改src/MAKE/Makefile.debian。要改这三行:
CCFLAGS = -g -O -I/usr/lib/mpich/include/ -DFFT_FFTW -DLAMMPS_GZIP
-I/lammps全路径/lib/poems/ -I/lammps全路径/lib/meam/
LINKFLAGS = -g -O
-L/lammps全路径/lib/poems/ -L/lammps路径/lib/meam/
USRLIB = -lfftw -lmpich
-lpoems -lmeam -lgfortran -lgfortranbegin
注意加粗的地方是要添加的。大致的意思就是告诉编译器哪里有额外的库文件,头文件。
欢迎大家拍砖。
[
本帖最后由 redream 于 2008-6-22 21:22 编辑 ]