设为首页 加入收藏

TOP

3.6.2 Makefile文件中的规则
2013-10-12 06:50:27 来源: 作者: 【 】 浏览:84
Tags:3.6.2 Makefile 文件 规则

3.6.2  Makefile文件中的规则

简单的Makefile文件中含有一些如下形式的规则。这些规则主要用来描述操作对象(源文件和目标文件)之间的依赖关系。

target(目标)…:prerequisites(先决条件)…
command(命令)

其中,target(目标)对象通常是指程序生成的一个文件的名称,例如它可以是一个可执行文件或者是一个以".o"结尾的目标文件(Object File)。目标也可以是所要采取活动的名称,例如"清理"("clean")。这里请注意,由于"target"和"object file"中的"object"通常都被译成中文的"目标",因此为了区别,我们把"target"译作"目标"或直接用其英文,而把object file译为".o文件"。

prerequisite(先决条件或称依赖对象)是用以创建target所必要或者依赖的一系列文件或其他目标。target通常依赖于多个这样的必要文件或目标文件。

command(命令)是指make所执行的操作,通常就是一些shell命令,是生成target需要执行的操作。当先决条件中一个或多个文件的最后修改时间比target文件的要新时,规则的命令就会被执行。另外,一个规则中可以有多个命令,每个命令占用规则中单独一行。请注意,我们需要在写每个命令之前键入一个制表符(按Tab键产生)!

通常,命令存在于具有先决条件的规则中,并且在任何先决条件发生改变时用于创建一个target文件。然而规则中并不一定要有先决条件。例如与target"clean"相关的含有删除命令的规则并不含有先决条件。

此时,一个规则说明了如何以及何时重新创建某些文件,而这些文件是某些具体规则的目标。make会依据先决条件来执行命令以创建或更新target。一个规则也可以说明如何以及何时执行一个操作。

除了规则以外,一个Makefile文件中也可以包含其他文字。但是对于一个简单的Makefile文件来说通常只需要包含一些规则就够了。有些规则可能会比前面给出的规则形式复杂得多,但基本上都是类似的。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇13.4.4 C语言程序的运行总结 下一篇3.5.4 链接程序预定义变量

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: