Makefile模式将所有源文件编译为可执行文件
我希望我的makefile能够识别并构建目录中的每个源文件 .f文件及其可执行文件都存在于当前目录中。所有源文件都是简短、独立的部分(彼此之间没有链接)。我希望可执行文件的名称与源文件sans.f(foo.f->foo)的名称相同 以下操作不起作用:Makefile模式将所有源文件编译为可执行文件,makefile,Makefile,我希望我的makefile能够识别并构建目录中的每个源文件 .f文件及其可执行文件都存在于当前目录中。所有源文件都是简短、独立的部分(彼此之间没有链接)。我希望可执行文件的名称与源文件sans.f(foo.f->foo)的名称相同 以下操作不起作用: FC=gfortran % :: %.f ${FC} -Wall $< -o $@ FC=gfortran %::% ${FC}-Wall$
FC=gfortran
% :: %.f
${FC} -Wall $< -o $@
FC=gfortran
%::%
${FC}-Wall$<-o$@
当我跑的时候,我得到
make:**无目标。停止。
如何让make做我想做的事?以下make文件满足我的要求:
FC=gfortran
FFLAGS=-Wall
SRC = $(wildcard *.f)
EXE = $(SRC:.f=)
all : $(EXE)