FC= ifort
FCFLAGS=-O2 -r8 -openmp -mcmodel=large -extend-source -shared-intel -I$(HOME)/usr/include
LDFLAGS=-L$(HOME)/usr/lib -lfftw3 -lm
TARGET=Project
Project: a.o b.o c.o d.o
#
all : $(TARGET)
%: %.o
$(FC) $(FCFLAGS) -o $@ $^ $(LDFLAGS)
%.o: %.f90
$(FC) $(FCFLAGS) -c $<
all : $(TARGET)
clean :
rm *.o
当我研究makefile时,没有
的信息#
all : $(TARGET)
以及%
和$^
的功能。我想检查一下这些事情。谢谢你的帮助。
答案 0 :(得分:0)
all
是一个目标(在该makefile中无故重复两次)。 clean
也是如此。目标是如何使作品。请参阅Rule Example。
$^
是目标食谱中可用的Automatic Variables之一。
%
是一些make functions和Pattern Rules中使用的通配符。