我在维基百科上阅读了关于"Make"的德文文章,发现了以下两行:
.c.o:
$(CC) $(CFLAGS) -c -o $@ $<
Run Code Online (Sandbox Code Playgroud)
为什么依赖表达式被省略,为什么目标使用双重文件扩展名?
这实际上是定义了一个后缀规则 ......它定义了如何从以".c"结尾的相应文件构建以".o"结尾的文件,该文件告诉make推断出" filename .c",如果存在的话,是对任何此类文件名的" filename .o" 的依赖项,并且" filename .o"文件可以使用提供的规则从其*.c依赖项构建.
但是,我应该指出,这一行是完全没必要的,实际上并不是应该放在Makefile中的东西,因为Make已经能够推断出那种类型的依赖.您可能对我的Makefile教程感兴趣,因为它非常详细地介绍了Make能够推断的所有内容.