我想知道makefile中的命令

时间:2015-02-06 11:17:50

标签: linux makefile command fortran

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) 

以及%$^的功能。我想检查一下这些事情。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

all是一个目标(在该makefile中无故重复两次)。 clean也是如此。目标是如何使作品。请参阅Rule Example

$^是目标食谱中可用的Automatic Variables之一。

%是一些make functionsPattern Rules中使用的通配符。