Makefile编写基础:规则、变量、文件指示和注释

需积分: 23 7 下载量 100 浏览量 更新于2024-08-25 收藏 701KB PPT 举报
Makefile编写之Makefile组成部分 Makefile是自动化编译工具make的配置文件,它定义了整个工程的编译规则。Makefile的编写是make的基础,理解Makefile的组成部分是使用make的关键。 Makefile主要由五个部分组成:显式规则、隐晦规则、变量定义、文件指示和注释。 **显式规则** 显式规则是Makefile中最基本的组成部分,它们说明了如何生成一个或多个目标文件。显式规则由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。显式规则的书写格式如下: ``` target: dependencies command ``` 其中,target是要生成的文件,dependencies是目标文件的依赖文件,command是生成目标文件的命令。 **隐晦规则** 隐晦规则是Makefile中的一种特殊的规则,由于make有自动推导的功能,所以隐晦的规则可以让我们比较粗糙地简略地书写Makefile。隐晦规则可以自动推导出目标文件的依赖关系,从而简化Makefile的书写。 **变量定义** 在Makefile中,我们要定义一系列的变量,变量一般都是字符串。变量的定义格式如下: ``` VARIABLE = value ``` 其中,VARIABLE是变量的名称,value是变量的值。在Makefile执行时,变量都会被扩展到相应的引用位置上。 **文件指示** 文件指示是Makefile中的一种特殊的指示,它包括三个部分: * 在一个Makefile中引用另一个Makefile,就像C语言中的include一样。 * 根据某些情况指定Makefile中的有效部分,就像C语言中的预编译#if一样。 * 定义一个多行的命令。 **注释** Makefile中只有行注释,和UNIX的Shell脚本一样,其注释是用“#”字符。如果你要在你的Makefile中使用“#”字符,可以用反斜框进行转义,如:“\#”。 理解Makefile的组成部分是使用make的基础,我们可以通过Makefile来定义整个工程的编译规则,从而实现自动化编译。