- 规则举例
规则举例
- foo.o: foo.c defs.h # foo模块
- cc -c -g foo.c
看到这个例子,各位应该不是很陌生了,前面也已说过, foo.o
是我们的目标, foo.c
和defs.h
是目标所依赖的源文件,而只有一个命令 cc -c -g foo.c
(以Tab键开头)。这个规则告诉我们两件事:
文件的依赖关系,
foo.o
依赖于foo.c
和defs.h
的文件,如果foo.c
和defs.h
的文件日期要比foo.o
文件日期要新,或是foo.o
不存在,那么依赖关系发生。生成或更新
foo.o
文件,就是那个cc命令。它说明了如何生成foo.o
这个文件。(当然,foo.c文件include了defs.h文件)