| 查看: 1843 | 回复: 11 | ||
[求助]
新手安装VASP4.6出错,求各位大神指点,非常感谢! 已有1人参与
|
||
如题,新手第一次安装vasp,安装了三天还是出错 ,求各位大神指点,不胜感激!安装过程一直参考:http://muchong.com/html/201203/4220060.html 现在已经编译获得的了libdmy.a,但是变异vasp.4.6时出错,错误内容如下: ubuntu@ubuntu-Aspire-4741:/tmp/vasp.4.6$ make -f makefile.linux_ifc_ath ./preprocess <base.F | /usr/bin/cpp -P -C -traditional >base.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c base.f90 ./preprocess <mpi.F | /usr/bin/cpp -P -C -traditional >mpi.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c mpi.f90 ./preprocess <smart_allocate.F | /usr/bin/cpp -P -C -traditional >smart_allocate.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c smart_allocate.f90 ./preprocess <xml.F | /usr/bin/cpp -P -C -traditional >xml.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c xml.f90 ./preprocess <constant.F | /usr/bin/cpp -P -C -traditional >constant.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c constant.f90 ./preprocess <jacobi.F | /usr/bin/cpp -P -C -traditional >jacobi.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c jacobi.f90 ./preprocess <main_mpi.F | /usr/bin/cpp -P -C -traditional >main_mpi.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c main_mpi.f90 ./preprocess <scala.F | /usr/bin/cpp -P -C -traditional >scala.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c scala.f90 ./preprocess <asa.F | /usr/bin/cpp -P -C -traditional >asa.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c asa.f90 ./preprocess <lattice.F | /usr/bin/cpp -P -C -traditional >lattice.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c lattice.f90 ./preprocess <poscar.F | /usr/bin/cpp -P -C -traditional >poscar.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c poscar.f90 ./preprocess <ini.F | /usr/bin/cpp -P -C -traditional >ini.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c ini.f90 ./preprocess <setex.F | /usr/bin/cpp -P -C -traditional >setex.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c setex.f90 ./preprocess <radial.F | /usr/bin/cpp -P -C -traditional >radial.f90 -DHOST=\"LinuxIFC_ath\" -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc -DRPROMU_DGEMV ifort -FR -assume byterecl -O3 -c radial.f90 9 0Q : catastrophic error: **Internal compiler error: segmentation violation signal raised** Please report this error along with the circumstances in which it occurred in a Software Problem Report. Note: File and line given may not be explicit cause of this error. compilation aborted for radial.f90 (code 1) make: *** [radial.o] 错误 1 请教各位出现这个错误可能是什么原因?谢谢! |
» 猜你喜欢
求个博导看看
已经有19人回复
论文终于录用啦!满足毕业条件了
已经有13人回复
2025年遐想
已经有5人回复
投稿Elsevier的杂志(返修),总是在选择OA和subscription界面被踢皮球
已经有8人回复
» 本主题相关价值贴推荐,对您同样有帮助:
亚精胺--做有机的核磁大神们--求救啊--为什么核磁做出来会是这样的结果---求解答啊!
已经有9人回复
求大神帮忙解答!
已经有8人回复
苦逼小硕求各位大神指点
已经有5人回复
各位大神请帮忙看下这两张TEM图能说明该样品是3D孔道结构吗?非常感谢
已经有6人回复
机器配置的选择,谢谢各位大神
已经有21人回复
fluent封闭流场的遇到的一些问题,麻烦大家来探讨一下,求大神指点。多谢各位
已经有9人回复
很急,各位大神帮帮忙,谢谢
已经有20人回复
求助大神,下边这个图怎么划分网格啊
已经有3人回复
关于matlab进行傅里叶变换和逆变换的程序,求大神指导!
已经有9人回复
求各位大神指点一下,不胜感激!
已经有12人回复
在ansys中做齿轮瞬态温度场分析,遇到问题,求大神指点
已经有9人回复
matlab解决重心法选址问题,运行不了啊,求助各位大神
已经有10人回复
求各位大神指点迷津
已经有3人回复
英语基础较差、求大神指点雅思6.5分备考方法!
已经有10人回复
几道政治问题。求大神解答。
已经有11人回复
急!!一道考研物理化学题,实在不会了,麻烦给位大神帮忙解决下!
已经有9人回复
ζ电位与胶体的分散性的关系 ,求大神指点~~~~~~~
已经有10人回复
求各位大神帮忙 检测猪肝中铜铁锌铅的前处理方法有哪些!!!
已经有8人回复
【求助】用vasp4.6计算GaAs的能带结构
已经有18人回复
guaiguaizhxd
木虫 (小有名气)
- 应助: 18 (小学生)
- 金币: 2381.3
- 红花: 11
- 帖子: 191
- 在线: 255.1小时
- 虫号: 1195834
- 注册: 2011-01-25
- 性别: GG
- 专业: 半导体物理

3楼2014-01-20 21:56:59
4楼2014-01-30 00:04:57
guaiguaizhxd
木虫 (小有名气)
- 应助: 18 (小学生)
- 金币: 2381.3
- 红花: 11
- 帖子: 191
- 在线: 255.1小时
- 虫号: 1195834
- 注册: 2011-01-25
- 性别: GG
- 专业: 半导体物理

6楼2014-02-12 11:55:14
guaiguaizhxd
木虫 (小有名气)
- 应助: 18 (小学生)
- 金币: 2381.3
- 红花: 11
- 帖子: 191
- 在线: 255.1小时
- 虫号: 1195834
- 注册: 2011-01-25
- 性别: GG
- 专业: 半导体物理
|
.SUFFIXES: .inc .f .f90 .F #----------------------------------------------------------------------- # Makefile for Intel Fortran compiler for Athlon XP systems # # The makefile was tested only under Linux on Intel platforms # (Suse 5.3- Suse 9.0) # the followin compiler versions have been tested # 5.0, 6.0, 7.0 and 7.1 (some 8.0 versions seem to fail compiling the code) # presently we recommend version 7.1 or 7.0, since these # releases have been used to compile the present code versions # # it might be required to change some of library pathes, since # LINUX installation vary a lot # Hence check ***ALL**** options in this makefile very carefully #----------------------------------------------------------------------- # # BLAS must be installed on the machine # there are several options: # 1) very slow but works: # retrieve the lapackage from ftp.netlib.org # and compile the blas routines (BLAS/SRC directory) # please use g77 or f77 for the compilation. When I tried to # use pgf77 or pgf90 for BLAS, VASP hang up when calling # ZHEEV (however this was with lapack 1.1 now I use lapack 2.0) # 2) most desirable: get an optimized BLAS # # the two most reliable packages around are presently: # 3a) Intels own optimised BLAS (PIII, P4, Itanium) # http://developer.intel.com/software/products/mkl/ # this is really excellent when you use Intel CPU's # # 3b) or obtain the atlas based BLAS routines # http://math-atlas.sourceforge.net/ # you certainly need atlas on the Athlon, since the mkl # routines are not optimal on the Athlon. # If you want to use atlas based BLAS, check the lines around LIB= # # 3c) mindblowing fast SSE2 (4 GFlops on P4, 2.53 GHz) # Kazushige Goto's BLAS # http://www.cs.utexas.edu/users/kgoto/signup_first.html # #----------------------------------------------------------------------- # all CPP processed fortran files have the extension .f90 SUFFIX=.f90 #----------------------------------------------------------------------- # fortran compiler and linker #----------------------------------------------------------------------- FC=ifort # fortran linker FCL=$(FC) #----------------------------------------------------------------------- # whereis CPP ?? (I need CPP, can't use gcc with proper options) # that's the location of gcc for SUSE 5.3 # # CPP_ = /usr/lib/gcc-lib/i486-linux/2.7.2/cpp -P -C # # that's probably the right line for some Red Hat distribution: # # CPP_ = /usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/cpp -P -C # # SUSE X.X, maybe some Red Hat distributions: CPP_ = ./preprocess <$*.F | /usr/bin/cpp -P -C -traditional >$*$(SUFFIX) #----------------------------------------------------------------------- # possible options for CPP: # NGXhalf charge density reduced in X direction # wNGXhalf gamma point only reduced in X direction # avoidalloc avoid ALLOCATE if possible # IFC work around some IFC bugs # CACHE_SIZE 1000 for PII,PIII, 5000 for Athlon, 8000-12000 P4 # RPROMU_DGEMV use DGEMV instead of DGEMM in RPRO (depends on used BLAS) # RACCMU_DGEMV use DGEMV instead of DGEMM in RACC (depends on used BLAS) # for Atlas -DRPROMU_DGEMV is recommended #----------------------------------------------------------------------- CPP = $(CPP_) -DHOST=\"LinuxIFC_ath\" \ -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc \ -DRPROMU_DGEMV #----------------------------------------------------------------------- # general fortran flags (there must a trailing blank on this line) #----------------------------------------------------------------------- FFLAGS = -FR -assume byterecl #----------------------------------------------------------------------- # optimization # we have tested whether higher optimisation improves performance # -axK SSE1 optimization, but also generate code executable on all mach. # xK improves performance somewhat on XP, and a is required in order # to run the code on older Athlons as well # -xW SSE2 optimization # -axW SSE2 optimization, but also generate code executable on all mach. # -tpp6 P3 optimization # -tpp7 P4 optimization #----------------------------------------------------------------------- OFLAG=-O3 OFLAG_HIGH = $(OFLAG) OBJ_HIGH = OBJ_NOOPT = DEBUG = -FR -O0 INLINE = $(OFLAG) #----------------------------------------------------------------------- # the following lines specify the position of BLAS and LAPACK # on Athlon, VASP works fastest with the Atlas library # so that's what I recommend #----------------------------------------------------------------------- # Atlas based libraries #ATLASHOME= /usr/zhong/ATLAS/lib #BLAS= -L$(ATLASHOME) -lf77blas -latlas # use the mkl Intel libraries for p4 (www.intel.com) # mkl.5.1 # set -DRPROMU_DGEMV -DRACCMU_DGEMV in the CPP lines BLAS= -L/opt/intel/mkl/lib/intel64/ -lmkl_intel_lp64 -lmkl_sequential -lmkl_core # mkl.5.2 requires also to -lguide library # set -DRPROMU_DGEMV -DRACCMU_DGEMV in the CPP lines #BLAS=-L/opt/intel/mkl/lib/32 -lmkl_p4 -lguide -lpthread # even faster Kazushige Goto's BLAS # http://www.cs.utexas.edu/users/kgoto/signup_first.html #BLAS= /opt/libs/libgoto/libgoto_p4_512-r0.6.so # LAPACK, simplest use vasp.4.lib/lapack_double #LAPACK= ../vasp.4.lib/lapack_double.o # use atlas optimized part of lapack LAPACK= ../vasp.4.lib/lapack_atlas.o -llapack -lcblas # use the mkl Intel lapack LAPACK=/opt/intel/mkl/lib/intel64/libmkl_intel_lp64.a #----------------------------------------------------------------------- LIB = -L../vasp.4.lib -ldmy \ ../vasp.4.lib/linpack_double.o $(LAPACK) \ $(BLAS) # options for linking (for compiler version 6.X, 7.1) nothing is required LINK = # compiler version 7.0 generates some vector statments which are located # in the svml library, add the LIBPATH and the library (just in case) #LINK = -L/opt/intel/compiler70/ia32/lib/ -lsvml #----------------------------------------------------------------------- # fft libraries: # VASP.4.6 can use fftw.3.0.X (http://www.fftw.org) # since this version is faster on P4 machines, we recommend to use it #----------------------------------------------------------------------- FFT3D = fft3dfurth.o fft3dlib.o #FFT3D = fftw3d.o fft3dlib.o /opt/libs/fftw-3.0.1/lib/libfftw3.a #======================================================================= # MPI section, uncomment the following lines # # one comment for users of mpich or lam: # You must *not* compile mpi with g77/f77, because f77/g77 # appends *two* underscores to symbols that contain already an # underscore (i.e. MPI_SEND becomes mpi_send__). The pgf90/ifc # compilers however append only one underscore. # Precompiled mpi version will also not work !!! # # We found that mpich.1.2.1 and lam-6.5.X to lam-7.0.4 are stable # mpich.1.2.1 was configured with # ./configure -prefix=/usr/local/mpich_nodvdbg -fc="pgf77 -Mx,119,0x200000" \ # -f90="pgf90 -Mx,119,0x200000" \ # --without-romio --without-mpe -opt=-O \ # # lam was configured with the line # ./configure -prefix /opt/libs/lam-7.0.4 --with-cflags=-O -with-fc=ifc \ # --with-f77flags=-O --without-romio # # please note that you might be able to use a lam or mpich version # compiled with f77/g77, but then you need to add the following # options: -Msecond_underscore (compilation) and -g77libs (linking) # # !!! Please do not send me any queries on how to install MPI, I will # certainly not answer them !!!! #======================================================================= #----------------------------------------------------------------------- # fortran linker for mpi: if you use LAM and compiled it with the options # suggested above, you can use the following line #----------------------------------------------------------------------- #FC=mpif77 #FCL=$(FC) #----------------------------------------------------------------------- # additional options for CPP in parallel version (see also above): # NGZhalf charge density reduced in Z direction # wNGZhalf gamma point only reduced in Z direction # scaLAPACK use scaLAPACK (usually slower on 100 Mbit Net) # 1000 or 2000 are the optimal CACHE_SIZE for the parallel version # and IFC on Athlon XP (gK) #----------------------------------------------------------------------- #CPP = $(CPP_) -DMPI -DHOST=\"LinuxIFC_ath\" -DIFC \ # -Dkind8 -DNGZhalf -DCACHE_SIZE=2000 -DPGF90 -Davoidalloc \ # -DRPROMU_DGEMV #----------------------------------------------------------------------- # location of SCALAPACK # if you do not use SCALAPACK simply uncomment the line SCA #----------------------------------------------------------------------- BLACS=$(HOME)/archives/SCALAPACK/BLACS/ SCA_=$(HOME)/archives/SCALAPACK/SCALAPACK SCA= $(SCA_)/libscalapack.a \ $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a $(BLACS)/LIB/blacs_MPI-LINUX-0.a $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a SCA= #----------------------------------------------------------------------- # libraries for mpi #----------------------------------------------------------------------- #LIB = -L../vasp.4.lib -ldmy \ # ../vasp.4.lib/linpack_double.o $(LAPACK) \ # $(SCA) $(BLAS) # FFT: fftmpi.o with fft3dlib of Juergen Furthmueller #FFT3D = fftmpi.o fftmpi_map.o fft3dlib.o # fftw.3.0.1 is slighly faster and should be used if available #FFT3D = fftmpiw.o fftmpi_map.o fft3dlib.o /opt/libs/fftw-3.0.1/lib/libfftw3.a #----------------------------------------------------------------------- # general rules and compile lines #----------------------------------------------------------------------- BASIC= symmetry.o symlib.o lattlib.o random.o SOURCE= base.o mpi.o smart_allocate.o xml.o \ constant.o jacobi.o main_mpi.o scala.o \ asa.o lattice.o poscar.o ini.o setex.o radial.o \ pseudo.o mgrid.o mkpoints.o wave.o wave_mpi.o $(BASIC) \ nonl.o nonlr.o dfast.o choleski2.o \ mix.o charge.o xcgrad.o xcspin.o potex1.o potex2.o \ metagga.o constrmag.o pot.o cl_shift.o force.o dos.o elf.o \ tet.o hamil.o steep.o \ chain.o dyna.o relativistic.o LDApU.o sphpro.o paw.o us.o \ ebs.o wavpre.o wavpre_noio.o broyden.o \ dynbr.o rmm-diis.o reader.o writer.o tutor.o xml_writer.o \ brent.o stufak.o fileio.o opergrid.o stepver.o \ dipol.o xclib.o chgloc.o subrot.o optreal.o davidson.o \ edtest.o electron.o shm.o pardens.o paircorrection.o \ optics.o constr_cell_relax.o stm.o finite_diff.o \ elpol.o setlocalpp.o INC= vasp: $(SOURCE) $(FFT3D) $(INC) main.o rm -f vasp $(FCL) -o vasp $(LINK) main.o $(SOURCE) $(FFT3D) $(LIB) makeparam: $(SOURCE) $(FFT3D) makeparam.o main.F $(INC) $(FCL) -o makeparam $(LINK) makeparam.o $(SOURCE) $(FFT3D) $(LIB) zgemmtest: zgemmtest.o base.o random.o $(INC) $(FCL) -o zgemmtest $(LINK) zgemmtest.o random.o base.o $(LIB) dgemmtest: dgemmtest.o base.o random.o $(INC) $(FCL) -o dgemmtest $(LINK) dgemmtest.o random.o base.o $(LIB) ffttest: base.o smart_allocate.o mpi.o mgrid.o random.o ffttest.o $(FFT3D) $(INC) $(FCL) -o ffttest $(LINK) ffttest.o mpi.o mgrid.o random.o smart_allocate.o base.o $(FFT3D) $(LIB) kpoints: $(SOURCE) $(FFT3D) makekpoints.o main.F $(INC) $(FCL) -o kpoints $(LINK) makekpoints.o $(SOURCE) $(FFT3D) $(LIB) clean: -rm -f *.g *.f *.o *.L *.mod ; touch *.F main.o: main$(SUFFIX) $(FC) $(FFLAGS)$(DEBUG) $(INCS) -c main$(SUFFIX) xcgrad.o: xcgrad$(SUFFIX) $(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcgrad$(SUFFIX) xcspin.o: xcspin$(SUFFIX) $(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcspin$(SUFFIX) makeparam.o: makeparam$(SUFFIX) $(FC) $(FFLAGS)$(DEBUG) $(INCS) -c makeparam$(SUFFIX) makeparam$(SUFFIX): makeparam.F main.F # # MIND: I do not have a full dependency list for the include # and MODULES: here are only the minimal basic dependencies # if one strucuture is changed then touch_dep must be called # with the corresponding name of the structure # base.o: base.inc base.F mgrid.o: mgrid.inc mgrid.F constant.o: constant.inc constant.F lattice.o: lattice.inc lattice.F setex.o: setexm.inc setex.F pseudo.o: pseudo.inc pseudo.F poscar.o: poscar.inc poscar.F mkpoints.o: mkpoints.inc mkpoints.F wave.o: wave.inc wave.F nonl.o: nonl.inc nonl.F nonlr.o: nonlr.inc nonlr.F $(OBJ_HIGH): $(CPP) $(FC) $(FFLAGS) $(OFLAG_HIGH) $(INCS) -c $*$(SUFFIX) $(OBJ_NOOPT): $(CPP) $(FC) $(FFLAGS) $(INCS) -c $*$(SUFFIX) fft3dlib_f77.o: fft3dlib_f77.F $(CPP) $(F77) $(FFLAGS_F77) -c $*$(SUFFIX) .F.o: $(CPP) $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX) .F$(SUFFIX): $(CPP) $(SUFFIX).o: $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX) radial.o : radial.F $(CPP) $(F77) $(FFLAGS) -01 $(INCS) -c $*$(SUFFIX) |

9楼2014-02-12 21:23:52
guaiguaizhxd
木虫 (小有名气)
- 应助: 18 (小学生)
- 金币: 2381.3
- 红花: 11
- 帖子: 191
- 在线: 255.1小时
- 虫号: 1195834
- 注册: 2011-01-25
- 性别: GG
- 专业: 半导体物理

10楼2014-02-12 21:27:04
guaiguaizhxd
木虫 (小有名气)
- 应助: 18 (小学生)
- 金币: 2381.3
- 红花: 11
- 帖子: 191
- 在线: 255.1小时
- 虫号: 1195834
- 注册: 2011-01-25
- 性别: GG
- 专业: 半导体物理

11楼2014-02-12 21:29:09
2楼2014-01-19 10:05:03
|
输入ifort -v 后显示ifort version 14.0.1 目前的错误提示是: ld: cannot find -llapack ld: cannot find -lcblas ld: cannot find -lf77blas ld: cannot find -latlas make: *** [vasp] 错误 1 我想问题是否处在我的ATLAS上?因为我按照网站http://muchong.com/html/201203/4220060.html的提示安装ATLAS,但是该网站只让我下载并解压了ATLAS,但没有提示如何安装。请问ATLAS是否需要安装才能使用? 我的cup是intel core i3,请问目前应该用哪个版本的ATLAS? 非常感谢! |
5楼2014-02-12 11:07:36
|
您好,我提升为root权限后编译,结果依然是这样。我之前没有接触过ATLAS和MKL数学库,所以对数学库的选择不太了解。我将makefile文件粘贴出来,您能帮忙将数学库的路径改为MKL吗?非常感谢!!! makefile.linux_ifc_ath如下:(我的电脑的cpu是intel core i3) .SUFFIXES: .inc .f .f90 .F #----------------------------------------------------------------------- # Makefile for Intel Fortran compiler for Athlon XP systems # # The makefile was tested only under Linux on Intel platforms # (Suse 5.3- Suse 9.0) # the followin compiler versions have been tested # 5.0, 6.0, 7.0 and 7.1 (some 8.0 versions seem to fail compiling the code) # presently we recommend version 7.1 or 7.0, since these # releases have been used to compile the present code versions # # it might be required to change some of library pathes, since # LINUX installation vary a lot # Hence check ***ALL**** options in this makefile very carefully #----------------------------------------------------------------------- # # BLAS must be installed on the machine # there are several options: # 1) very slow but works: # retrieve the lapackage from ftp.netlib.org # and compile the blas routines (BLAS/SRC directory) # please use g77 or f77 for the compilation. When I tried to # use pgf77 or pgf90 for BLAS, VASP hang up when calling # ZHEEV (however this was with lapack 1.1 now I use lapack 2.0) # 2) most desirable: get an optimized BLAS # # the two most reliable packages around are presently: # 3a) Intels own optimised BLAS (PIII, P4, Itanium) # http://developer.intel.com/software/products/mkl/ # this is really excellent when you use Intel CPU's # # 3b) or obtain the atlas based BLAS routines # http://math-atlas.sourceforge.net/ # you certainly need atlas on the Athlon, since the mkl # routines are not optimal on the Athlon. # If you want to use atlas based BLAS, check the lines around LIB= # # 3c) mindblowing fast SSE2 (4 GFlops on P4, 2.53 GHz) # Kazushige Goto's BLAS # http://www.cs.utexas.edu/users/kgoto/signup_first.html # #----------------------------------------------------------------------- # all CPP processed fortran files have the extension .f90 SUFFIX=.f90 #----------------------------------------------------------------------- # fortran compiler and linker #----------------------------------------------------------------------- FC=ifort # fortran linker FCL=$(FC) #----------------------------------------------------------------------- # whereis CPP ?? (I need CPP, can't use gcc with proper options) # that's the location of gcc for SUSE 5.3 # # CPP_ = /usr/lib/gcc-lib/i486-linux/2.7.2/cpp -P -C # # that's probably the right line for some Red Hat distribution: # # CPP_ = /usr/lib/gcc-lib/i386-redhat-linux/2.7.2.3/cpp -P -C # # SUSE X.X, maybe some Red Hat distributions: CPP_ = ./preprocess <$*.F | /usr/bin/cpp -P -C -traditional >$*$(SUFFIX) #----------------------------------------------------------------------- # possible options for CPP: # NGXhalf charge density reduced in X direction # wNGXhalf gamma point only reduced in X direction # avoidalloc avoid ALLOCATE if possible # IFC work around some IFC bugs # CACHE_SIZE 1000 for PII,PIII, 5000 for Athlon, 8000-12000 P4 # RPROMU_DGEMV use DGEMV instead of DGEMM in RPRO (depends on used BLAS) # RACCMU_DGEMV use DGEMV instead of DGEMM in RACC (depends on used BLAS) # for Atlas -DRPROMU_DGEMV is recommended #----------------------------------------------------------------------- CPP = $(CPP_) -DHOST=\"LinuxIFC_ath\" \ -Dkind8 -DNGXhalf -DCACHE_SIZE=5000 -DPGF90 -Davoidalloc \ -DRPROMU_DGEMV #----------------------------------------------------------------------- # general fortran flags (there must a trailing blank on this line) #----------------------------------------------------------------------- FFLAGS = -FR -assume byterecl #----------------------------------------------------------------------- # optimization # we have tested whether higher optimisation improves performance # -axK SSE1 optimization, but also generate code executable on all mach. # xK improves performance somewhat on XP, and a is required in order # to run the code on older Athlons as well # -xW SSE2 optimization # -axW SSE2 optimization, but also generate code executable on all mach. # -tpp6 P3 optimization # -tpp7 P4 optimization #----------------------------------------------------------------------- OFLAG=-O3 OFLAG_HIGH = $(OFLAG) OBJ_HIGH = OBJ_NOOPT = DEBUG = -FR -O0 INLINE = $(OFLAG) #----------------------------------------------------------------------- # the following lines specify the position of BLAS and LAPACK # on Athlon, VASP works fastest with the Atlas library # so that's what I recommend #----------------------------------------------------------------------- # Atlas based libraries ATLASHOME= /usr/zhong/ATLAS/lib BLAS= -L$(ATLASHOME) -lf77blas -latlas # use the mkl Intel libraries for p4 (www.intel.com) # mkl.5.1 # set -DRPROMU_DGEMV -DRACCMU_DGEMV in the CPP lines #BLAS=-L/opt/intel/mkl/lib/32 -lmkl_p4 -lpthread # mkl.5.2 requires also to -lguide library # set -DRPROMU_DGEMV -DRACCMU_DGEMV in the CPP lines #BLAS=-L/opt/intel/mkl/lib/32 -lmkl_p4 -lguide -lpthread # even faster Kazushige Goto's BLAS # http://www.cs.utexas.edu/users/kgoto/signup_first.html #BLAS= /opt/libs/libgoto/libgoto_p4_512-r0.6.so # LAPACK, simplest use vasp.4.lib/lapack_double #LAPACK= ../vasp.4.lib/lapack_double.o # use atlas optimized part of lapack LAPACK= ../vasp.4.lib/lapack_atlas.o -llapack -lcblas # use the mkl Intel lapack #LAPACK= -lmkl_lapack #----------------------------------------------------------------------- LIB = -L../vasp.4.lib -ldmy \ ../vasp.4.lib/linpack_double.o $(LAPACK) \ $(BLAS) # options for linking (for compiler version 6.X, 7.1) nothing is required LINK = # compiler version 7.0 generates some vector statments which are located # in the svml library, add the LIBPATH and the library (just in case) #LINK = -L/opt/intel/compiler70/ia32/lib/ -lsvml #----------------------------------------------------------------------- # fft libraries: # VASP.4.6 can use fftw.3.0.X (http://www.fftw.org) # since this version is faster on P4 machines, we recommend to use it #----------------------------------------------------------------------- FFT3D = fft3dfurth.o fft3dlib.o #FFT3D = fftw3d.o fft3dlib.o /opt/libs/fftw-3.0.1/lib/libfftw3.a #======================================================================= # MPI section, uncomment the following lines # # one comment for users of mpich or lam: # You must *not* compile mpi with g77/f77, because f77/g77 # appends *two* underscores to symbols that contain already an # underscore (i.e. MPI_SEND becomes mpi_send__). The pgf90/ifc # compilers however append only one underscore. # Precompiled mpi version will also not work !!! # # We found that mpich.1.2.1 and lam-6.5.X to lam-7.0.4 are stable # mpich.1.2.1 was configured with # ./configure -prefix=/usr/local/mpich_nodvdbg -fc="pgf77 -Mx,119,0x200000" \ # -f90="pgf90 -Mx,119,0x200000" \ # --without-romio --without-mpe -opt=-O \ # # lam was configured with the line # ./configure -prefix /opt/libs/lam-7.0.4 --with-cflags=-O -with-fc=ifc \ # --with-f77flags=-O --without-romio # # please note that you might be able to use a lam or mpich version # compiled with f77/g77, but then you need to add the following # options: -Msecond_underscore (compilation) and -g77libs (linking) # # !!! Please do not send me any queries on how to install MPI, I will # certainly not answer them !!!! #======================================================================= #----------------------------------------------------------------------- # fortran linker for mpi: if you use LAM and compiled it with the options # suggested above, you can use the following line #----------------------------------------------------------------------- #FC=mpif77 #FCL=$(FC) #----------------------------------------------------------------------- # additional options for CPP in parallel version (see also above): # NGZhalf charge density reduced in Z direction # wNGZhalf gamma point only reduced in Z direction # scaLAPACK use scaLAPACK (usually slower on 100 Mbit Net) # 1000 or 2000 are the optimal CACHE_SIZE for the parallel version # and IFC on Athlon XP (gK) #----------------------------------------------------------------------- #CPP = $(CPP_) -DMPI -DHOST=\"LinuxIFC_ath\" -DIFC \ # -Dkind8 -DNGZhalf -DCACHE_SIZE=2000 -DPGF90 -Davoidalloc \ # -DRPROMU_DGEMV #----------------------------------------------------------------------- # location of SCALAPACK # if you do not use SCALAPACK simply uncomment the line SCA #----------------------------------------------------------------------- BLACS=$(HOME)/archives/SCALAPACK/BLACS/ SCA_=$(HOME)/archives/SCALAPACK/SCALAPACK SCA= $(SCA_)/libscalapack.a \ $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a $(BLACS)/LIB/blacs_MPI-LINUX-0.a $(BLACS)/LIB/blacsF77init_MPI-LINUX-0.a SCA= #----------------------------------------------------------------------- # libraries for mpi #----------------------------------------------------------------------- #LIB = -L../vasp.4.lib -ldmy \ # ../vasp.4.lib/linpack_double.o $(LAPACK) \ # $(SCA) $(BLAS) # FFT: fftmpi.o with fft3dlib of Juergen Furthmueller #FFT3D = fftmpi.o fftmpi_map.o fft3dlib.o # fftw.3.0.1 is slighly faster and should be used if available #FFT3D = fftmpiw.o fftmpi_map.o fft3dlib.o /opt/libs/fftw-3.0.1/lib/libfftw3.a #----------------------------------------------------------------------- # general rules and compile lines #----------------------------------------------------------------------- BASIC= symmetry.o symlib.o lattlib.o random.o SOURCE= base.o mpi.o smart_allocate.o xml.o \ constant.o jacobi.o main_mpi.o scala.o \ asa.o lattice.o poscar.o ini.o setex.o radial.o \ pseudo.o mgrid.o mkpoints.o wave.o wave_mpi.o $(BASIC) \ nonl.o nonlr.o dfast.o choleski2.o \ mix.o charge.o xcgrad.o xcspin.o potex1.o potex2.o \ metagga.o constrmag.o pot.o cl_shift.o force.o dos.o elf.o \ tet.o hamil.o steep.o \ chain.o dyna.o relativistic.o LDApU.o sphpro.o paw.o us.o \ ebs.o wavpre.o wavpre_noio.o broyden.o \ dynbr.o rmm-diis.o reader.o writer.o tutor.o xml_writer.o \ brent.o stufak.o fileio.o opergrid.o stepver.o \ dipol.o xclib.o chgloc.o subrot.o optreal.o davidson.o \ edtest.o electron.o shm.o pardens.o paircorrection.o \ optics.o constr_cell_relax.o stm.o finite_diff.o \ elpol.o setlocalpp.o INC= vasp: $(SOURCE) $(FFT3D) $(INC) main.o rm -f vasp $(FCL) -o vasp $(LINK) main.o $(SOURCE) $(FFT3D) $(LIB) makeparam: $(SOURCE) $(FFT3D) makeparam.o main.F $(INC) $(FCL) -o makeparam $(LINK) makeparam.o $(SOURCE) $(FFT3D) $(LIB) zgemmtest: zgemmtest.o base.o random.o $(INC) $(FCL) -o zgemmtest $(LINK) zgemmtest.o random.o base.o $(LIB) dgemmtest: dgemmtest.o base.o random.o $(INC) $(FCL) -o dgemmtest $(LINK) dgemmtest.o random.o base.o $(LIB) ffttest: base.o smart_allocate.o mpi.o mgrid.o random.o ffttest.o $(FFT3D) $(INC) $(FCL) -o ffttest $(LINK) ffttest.o mpi.o mgrid.o random.o smart_allocate.o base.o $(FFT3D) $(LIB) kpoints: $(SOURCE) $(FFT3D) makekpoints.o main.F $(INC) $(FCL) -o kpoints $(LINK) makekpoints.o $(SOURCE) $(FFT3D) $(LIB) clean: -rm -f *.g *.f *.o *.L *.mod ; touch *.F main.o: main$(SUFFIX) $(FC) $(FFLAGS)$(DEBUG) $(INCS) -c main$(SUFFIX) xcgrad.o: xcgrad$(SUFFIX) $(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcgrad$(SUFFIX) xcspin.o: xcspin$(SUFFIX) $(FC) $(FFLAGS) $(INLINE) $(INCS) -c xcspin$(SUFFIX) makeparam.o: makeparam$(SUFFIX) $(FC) $(FFLAGS)$(DEBUG) $(INCS) -c makeparam$(SUFFIX) makeparam$(SUFFIX): makeparam.F main.F # # MIND: I do not have a full dependency list for the include # and MODULES: here are only the minimal basic dependencies # if one strucuture is changed then touch_dep must be called # with the corresponding name of the structure # base.o: base.inc base.F mgrid.o: mgrid.inc mgrid.F constant.o: constant.inc constant.F lattice.o: lattice.inc lattice.F setex.o: setexm.inc setex.F pseudo.o: pseudo.inc pseudo.F poscar.o: poscar.inc poscar.F mkpoints.o: mkpoints.inc mkpoints.F wave.o: wave.inc wave.F nonl.o: nonl.inc nonl.F nonlr.o: nonlr.inc nonlr.F $(OBJ_HIGH): $(CPP) $(FC) $(FFLAGS) $(OFLAG_HIGH) $(INCS) -c $*$(SUFFIX) $(OBJ_NOOPT): $(CPP) $(FC) $(FFLAGS) $(INCS) -c $*$(SUFFIX) fft3dlib_f77.o: fft3dlib_f77.F $(CPP) $(F77) $(FFLAGS_F77) -c $*$(SUFFIX) .F.o: $(CPP) $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX) .F$(SUFFIX): $(CPP) $(SUFFIX).o: $(FC) $(FFLAGS) $(OFLAG) $(INCS) -c $*$(SUFFIX) radial.o : radial.F $(CPP) $(F77) $(FFLAGS) -01 $(INCS) -c $*$(SUFFIX) |
7楼2014-02-12 13:09:36
8楼2014-02-12 13:16:28







,求各位大神指点,不胜感激!
回复此楼
仲_______