假设有下面这样的一个makefile:
OBJS = editor.o screen.o keyboard.o
edit :
$(OBJS)
cc -o editor $(OBJS)
.PHONY : clean
clean
:
rm editor
$(OBJS)
此时,make就使用所谓的隐式规则,实际上,对每一个名为somefile.o的目标(object)文件,make首先找到与之相应的源代码somefile.c,并且用gcc
-c somefile.c -o somefile.o
编译生产这个目标文件.
实际的机制比这个所描述的要全面.目标文件(.o)可以从c,Pascal和Fortran等源代码中生产,所以make也应去查找符合实际情况的相关文件.