任何人都可以通过一些隐式规则告诉我下面的make文件中的目标是什么。 我在网上搜索了很多,但没有发现任何有用的信息。如果有人解释makefile中的目标,构造命令,依赖项和宏,那将会很愉快。
COBJECTS = menu.o users.o resellers.o propspects.o
HFILES = menu.h
leads: $(COBJECTS)
gcc -o leads $(COBJECTS)
menu.o users.o resellers.o prospects.o: $(HFILES)
答案 0 :(得分:1)
该makefile中定义的唯一真正有意义的目标是leads
。这也恰好是默认目标,因此make
和make leads
会做同样的事情。
作为构建leads
目标所必需的规则的一部分,还存在其他目标,但这些目标都是内部默认设置,并且手动运行并不是很有趣。
在其他可能的目标列表中(以及在完全无趣的一群中更有趣的目标之一)是:
答案 1 :(得分:1)
在这条规则中:
leads: $(COBJECTS)
gcc -o leads $(COBJECTS)
目标 leads
,先决条件为 $(COBJECTS)
,命令为 gcc -o leads $(COBJECTS)
在这条规则中:
menu.o users.o resellers.o prospects.o: $(HFILES)
目标是 menu.o users.o resellers.o prospects.o
,先决条件是 $(HFILES)
。它没有命令。