这是make文件
# EXTRALIBS = -L/opt/SUNWspro/lib -lF77 -lM77 -lsunmath -lfsu
# LAPACK = -L/home/bramley/lib -llapack95
# BLAS = -L/home/bramley/lib -lblas95
# F95= /usr/local/intel/compiler60/ia32/bin/ifc
# OPTS= -O -w
# LIBS = $(LAPACK) $(BLAS)
include make.inc
runLU: luDriver.o LU8.o LU4.o rowswp.o elapsedtime.o kinds.mod \
utilities.o swaps.o checkLU.o WriteParameters.o writeB.o Writeipiv.o
$(F95) $(INCS) -o runLU $(OPTS) luDriver.o LU8.o LU4.o kinds.o \
utilities.o swaps.o elapsedtime.o WriteParameters.o checkLU.o \
rowswp.o writeB.o Writeipiv.o $(LIBS)
luDriver.o: luDriver.f90 kinds.mod
$(F95) $(OPTS) -c luDriver.f90
LU4.o: LU4.c
$(CC) $(INCS) $(OPTS) -c LU4.c
LU8.o: LU8.c
$(CC) $(INCS) $(OPTS) -c LU8.c
rowswp.o: rowswp.f90 kinds.mod
$(F95) $(OPTS) -c rowswp.f90
WriteParameters.o: WriteParameters.f90
$(F95) $(OPTS) -c WriteParameters.f90
kinds.mod: kinds.f90
$(F95) $(OPTS) -c kinds.f90
elapsedtime.o: elapsedtime.f90
$(F95) $(OPTS) -c elapsedtime.f90
checkLU.o: checkLU.f90 kinds.mod
$(F95) $(OPTS) -c checkLU.f90
swaps.o: swaps.f90 kinds.mod
$(F95) $(OPTS) -c swaps.f90
utilities.o: utilities.f90 kinds.mod
$(F95) $(OPTS) -c utilities.f90
writeB.o: writeB.f90
$(F95) $(OPTS) -c writeB.f90
Writeipiv.o: Writeipiv.f90
$(F95) $(OPTS) -c Writeipiv.f90
clean:
/bin/rm -f *.o *.mod runLU log B ipiv
kleen:
/bin/rm -f *.o *.mod runLU log results B ipiv
这是make.inc
# F90 = ifort
F90 = gfortran
CC = gcc
F95 = $(F90)
OPTS = -O3
MKLROOT = /opt/intel/composer_xe_2013.3.163/mkl
LIBS = -L$(MKLROOT)/lib/intel64 -lmkl_rt -lpthread -lm
INCS = -I.
如果没有找到-lmkl_rt,我该怎么办?
答案 0 :(得分:2)
使用
source /opt/intel/composerxe/bin/compilervars.sh intel64
(最好把它放在bash_profile
)。根据您的安装调整路径。
它设置了正确的LIBRARY_PATH
变量(不是LD_LIBRARY_PATH
,用于运行时!)
答案 1 :(得分:0)
您应该设置变量LD_LIBRARY_PATH
并将其指向包含缺失库的目录。