1. Intel fortran编译器的安装
tar zxvf parallel_studio_xe_2011_sp1_update2_intel64(1).tgz
./install.sh 一步一步按提示安装,中间有一步是指定许可证的绝对路径,如下面的路径/home/ljzhou86/software//NCOM_L___NT4V-M4NRXKF7.lic
在~/.bashrc添加下面两行
vi ~/.bashrc
source /home/ljzhou86/intel/2011/composerxe/bin/compilervars.sh intel64
source /home/ljzhou86/intel/2011/composerxe/mkl/bin/mklvars.sh intel64 lp64
source ~/.bashrc
2. Openmpi-1.6的编译
tar zxvf openmpi-1.6.tar.gz
cd openmpi-1.6
./configure CC=icc CXX=icpc F77=ifort FC=ifort --prefix=/home/ljzhou86/app/openmpi
上面红色部分不能缺少,否则编译出错:
In file xml.f90:925 ,str( 1
Error: Syntax error in argument list at (1)
In file xml.f90:978 ,str( 1
Error: Syntax error in argument list at (1)
make: *** [xml.o] Error 1
make all
make install
vi ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/ljzhou86/app/openmpi/lib
export PATH=/home/ljzhou86/app/openmpi/bin:$PATH
3 fftw的安装
tar zxvf fftw-3.2.1.tar.gz
cd fftw-3.2.1
./configure --prefix=/home/ljzhou86/app/fftw-3.2.1
make
make install
4 Vasp.5.lib
tar zxvf vasp.5.lib.tar.gz
cd vasp.5.lib
cp makefile.linux_ifc_P4 makefile
Vi makefile
CPP = /home/ljzhou86/intel/composer_xe_2011_sp1.9.293/bin/intel64/icc -E -P -C
∗.F>
*.f
FC=ifort
make
5 VASP5.3的安装
vi makefile
CPP_ = ./preprocess < ∗.F|/usr/bin/cpp−P−C−traditional> *$(SUFFIX)
CPP_=fpp -f_com=no -free -w0 ∗.F *$(SUFFIX)
OFLAG=-O3
FFLAGS = -I /home/ljzhou86/app/fftw -FR
BLAS= -L/home/ljzhou86/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -liomp5 -lpthread -lmkl_sequential -lmkl_core -i-static
LAPACK= -L/home/ljzhou86/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_blacs_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lmkl_lapack95_lp64 -lpthread
FC=mpif90
FCL=$(FC)
CPP = $(CPP_) -DMPI -DHOST=\"LinuxIFC\" -DIFC \
-DCACHE_SIZE=4000 -DPGF90 -Davoidalloc -DNGZhalf \
-DMPI_BLOCK=8000 -Duse_collective
# -DRPROMU_DGEMV -DRACCMU_DGEMV
FFT3D = fftmpi.o fftmpi_map.o fft3dfurth.o fft3dlib.o
LIB = -limf -lm -L../vasp.5.lib -ldmy \
../vasp.5.lib/linpack_double.o
(LAPACK)
(SCA) $(BLAS)
警告:/…/libimf.so: warning: warning: feupdateenv is not implemented and will always fail
对于VASP的解决办法是把系统的math libraries加入,即-limf –lm
6 vasp5.3+neb的编译中
an additional modification to main.F is required for the solid-state NEB.? Find and replace:
CALL CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, & LATT_CUR%A,LATT_CUR%B,IO%IU6) with CALL
CHAIN_FORCE(T_INFO%NIONS,DYN%POSION,TOTEN,TIFOR, & TSIF,LATT_CUR%A,LATT_CUR%B,IO%IU6)
vi makefile
# CPP_=fpp -f_com=no -free -w0 ∗.F *$(SUFFIX)
sed -i 's/^[ ]\+#/#/' chain.F dimer.F
http://blog.sciencenet.cn/home.php?mod=space&uid=100989&do=blog&id=717066