2. 阅读Makefile文件:all : libmy

2. 阅读Makefile文件:

all : libmys.so

SRC = f1.c f2.c f3.c

TGT = $(SRC:.c=.o)

%.o : %.c

cc -c $?

libmys.so : $(TGT)

cc -shared -o $@ $(TGT)

clean:

rm -f $(TGT)

回答以下问题:

(1) 此Makefile文件的主要功能是什么?

(2) 此Makefile文件包含多少个规则?它们分别是什么?

(3) 使用此Makefile文件可以生成目标文件f2.o吗?为什么?


答案

(1)生成共享库文件libmys.so;

(2) 4个。分别是:all,%.o,libmys.so和clean。

(3) 可以。因为规则%.o : %.c已经定义了*.o与*.c的关系和生成方法。

题目信息

题号:7202
题型:简答题
难度:普通