Fortran编译错误:目标'../lib/libSPheno.a(Mathematics.o)'的makefile配方失败

时间:2018-05-16 13:42:02

标签: makefile fortran makefile-errors

我正在使用一个包并修改了src文件夹中的SPheno4.F90文件。当我在src中尝试使用make进行编译时,

make: Warning: Archive '../lib/libSPheno.a' seems to have been 
created in deterministic mode. 'Control.o' will always be updated. 
Please consider passing the U flag to ar to avoid the problem.
Control.F90
make: Control.F90: Command not found
Makefile:86: recipe for target '../lib/libSPheno.a(Control.o)' failed
make: *** [../lib/libSPheno.a(Control.o)] Error 127

在makefile中,

InDir = ../include
Mdir = ${InDir}
name = ../lib/libSPheno.a

ifeq (${F90},gfortran)
comp = -c -O -J${Mdir} -I${InDir}
LFlagsB = -O  
endif

.SUFFIXES : .o .ps .f90 .F90 .a
bin/SPheno: ${name} SPheno4.o
${F90} -o SPheno ${LFlagsB} SPheno4.o ../lib/${name}
mv SPheno ../bin
${name}: ${name}(Control.o)  ${name}(Mathematics.o)  ${name}(RGEs.o)\

...

.f90.a:
${F90} ${comp} $<
ar -ruc $@ $*.o
rm -f $*.o

... 在../lib文件夹中,只有一个文件libSPheno.a。

我完全不知道这个错误。 事实上,我不理解这个makefile中的每一行,因此也欢迎任何关于这种调试的建议。

0 个答案:

没有答案