我有一个使用一些数学库的 Fortran 文件 my.f90。包含文件和库文件的两个标志在 .csh 文件中定义
INC_FLAG = "-I$MATH_DIR/include/LIB_ARCH"
LINK_FLAG= "-L$MATH_DIR/lib/lib$LIB.ARCH -Bdynamic -limsl -limslblas"
在终端这工作得很好
gfortran -o my.o $INC_FLAG my.f90 $LINK_FLAG
但是当我尝试在分离步骤中进行编译和链接时,我无法做到。这失败了
gfortran -c $INC_FLAG my.f90
gfortran -o my.o $LINK_FLAG
我需要分别进行编译和链接,因为我将有许多源文件(.f90)并且需要制作一个编译和链接分别完成的makefile。我的makefile也不起作用
all: my.o
gfortran -o my.o $(LINK_F90)
my.o: my.f90
gfortran $(F90FLAGS) -c my.f90 $<
clean:
rm my.o
这里发生了什么?