|
老板给了一个程序让编译一下,编译中老是报错,
mpif90 -O3 -r8 -g /opt/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_lapack95_ilp64.a /opt/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_blas95_ilp64.a -o mca.x base.o rdmca.o mpi.o rdcontcar.o rdoutcar.o rdpotcar.o rdwavecar.o socmatr.o functions.o projection.o diagonalize.o mca.o
diagonalize.o: In function `diagonalizeh':
/home/wangzf/vaspsc/mag/final-torque-IV/diagonalize.f90:215: undefined reference to `zheev_'
diagonalize.o: In function `diagonalize_mp_diagonalizeh_':
/home/wangzf/vaspsc/mag/final-torque-IV/diagonalize.f90:215: undefined reference to `zheev_'
make: *** [mca.x] Error 1
这应该是lapack库中的内容 makefile中已经设置了
LAPACK = /opt/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_lapack95_ilp64.a
BLAS = /opt/intel/composer_xe_2013.3.163/mkl/lib/intel64/libmkl_blas95_ilp64.a
LIBS = $(LAPACK) $(BLAS)
依然调用不了lapack库
makefile中其他关键参数如下
FC = mpif90
MFFLAGS = -O3 -r8 -g
EXE = mca.x
OBJS = base.o rdmca.o mpi.o\
rdcontcar.o rdoutcar.o rdpotcar.o rdwavecar.o\
socmatr.o functions.o projection.o diagonalize.o\
mca.o
$(EXE) : $(OBJS)
$(FC) $(MFFLAGS) $(LIBS) -o $(EXE) $(OBJS)
---------------------------------------------
求大神帮助~
|
|