第五章make工程管胆理工具.pptVIP

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章make工程管胆理工具

第五章 make 工程管理工具 make 的工作机制 Makefile 的基本语法 使用Makefile 典型工程 自动生成Makefile 的流程 5.1 make 和 Makefile Make 和Makefile 提供了一种非常简单有效的工程管理方式。使用这种方式管理工程的原理很简单: Makefile 是一个决定怎样编译工程的文本文件,有一定的书写规则。在工程更新的时候,使用GNU的make工具根据当前的Makefile 对工程进行编译。 make 在Linux的程序开发环境下,一般不具有集成开发环境(IDE)。因此,当需要大量编译工程的时候,就需要使用自己的方法来管理。如果仅仅手动使用gcc的编译命令,将变得繁琐而单调,而且不利于工程管理。而如果使用Makefile 进行工程管理,就可以较好地处理这个问题。 Make Make 程序最初设计的目的是为了维护C程序文件,防止不必要的重新编译。例如:在使用命令行进行编译的时候,修改了一个工程中的头文件,如何确保包含这个头文件的所有文件都得到编译呢?这些工作可以让make程序来自动完成。Make工具对于维护一些具有依赖关系的文件特别有用,它对文件和命令的联系提供了一套编码方法。在使用的工程中只告诉make需要做什么,即提供一些规则,其他的工作由make 自动完成。 make Make 工具的工作是自动确定工程的哪部分需要重新编译,然后执行命令去编译它们。 在程序开发的过程中,Makefile带来的好处就是自动化编译。当编译规则制定完成后,只需要一个make 命令,整个工程就会根据makefile判断是否需要更新来完成自动编译,极大地提高了软件开发的效率,降低了开发的复杂度。 Make的机制 命令行程序make和一个文本文件Makefile。 Make 是一个命令工具,具体来说是一个解释Makefile中的指令的命令工具。Makefile 的工作原理是调用系统中的make命令解释当前的Makefile,完成其中指定的功能 Makefile 主要包含5个方面的内容 显示规则 隐式规则 变量定义 文件指示 注释 显示规则 显示规则说明了如何生成一个或多个目标。这需要由Makefile的书写者显式指出要生成的文件、文件的依赖文件及生成的命令。 隐式规则 由于make有自动推导的功能,会选择一套默认的方法进行make,所以隐式的规则可以让开发者比较、简略地书写Makefile,这是make 所支持的。 变量定义 在Makefile 中需要定义一系列的变量,一般都是字符串,它类似C语言中的宏,当Makefile被执行时,其中的变量都会被扩展到相应的引用位置上。 文件指示 包括三部分,第一部分是在一个Makefile中引用另一个Makefile,就像C语言中的include一样包含进来;第二部分是指根据某些情况指定Makefile中的有效部分,就像C语言中的预编译宏#ifdef一样;第三部分就是定义一个多行的命令。 注释 Makefile 中只有行注释,和Unix 的Shell脚本一样,其注释符使用井号”#”字符。 * * *

文档评论(0)

135****1071 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档