第5章#95;Make项目管理工具使用及Makefile文件编写.pptxVIP

第5章#95;Make项目管理工具使用及Makefile文件编写.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章Make及makefile文件的编写 V 1.概述;Linux系统下的文件编译;什么是make? Make是大型程序维护工具 Make工作时,需要名字为“ makefile,,的makefile文件 O 根据依赖关系自动决定项目的那些部分需要重新编 译。 基本原理:如果某个源程序文件被^改,那么依赖 这个源程序文件的所有目标文件,都需要重新编 译。;Makefile Rule;makefile规则介绍;makefile 文件 在makefile(Makefile)文件中,采用自顶向下到的方法来说明依赖 关系;执行make 在makefile(Makefile)文件所在的目录中,执行make命 令 语法:make[选项][宏定义][目标文件];Make的工作过程 1 .make在当前目录下找名字叫Makefile”或makefile”的文件 2. 如果找到,它会找文件中的第一个目标文件(target),比 如找到“network”这个文件,并把这个文件作为最终的目 标文件。 3. 如果network文件不存在,或是network所依赖的后面的.。文 件的文件修改时间要比network这个文件新??那么,他就会 扌丸行后面防定义白勺命令来生成network这个文件。 4. 如果network所依赖的文件也存在,那么make会在当前文 件中找目标为.。文件的依赖性,如果找到则再根据那一个 规则生成.。文件(使用源文件和?h文件)。(这有点像一 个堆栈的过程);make时,哪些文件被重新编译 1 .所有的源文件没有被编译过,则对各个c源文件 进行编译并进行链接,生成最后的可执行程序; 2. 每一个在上次执行make之后修改过的C源代码文 件在本make时将会被重新编译; 3. 头文件在上一次执行make之后被修改。则所有 包含此头文件的C源文件在本次执行make时将会 被重新编译。;关于Makefile文件名;对“规则”的再认识 在Makefile中“规则”就是描述在什么情况下、如 何重建规则的目标文件, 通常规则中包括了目标的依赖关系(目标的依赖文 件)和重建目标的命令。 make执行重建目标的命令,来创建或者重建规则的 目标(此目标文件也可以是触发这个规则的上一 个规则中的依赖文件)。 规则包含了目标和依赖的关系以及更新目标所要求 的命令。;—个简单的例子;使用变量 在上例的Makefile中可是添加这样一行: objects = main.o kbd.o command.o display.o insert.o \search,o files.o utils.o “objects〃作为一个变量,它代表所有的.。文件的列表,在需要 使用这些.。文件列表的地方使用“/objects)”来表示它 objects = main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o edit: $(objects) gcc $(objects) -o edit;使用变量的例子 exe: main.o io.o;自动推导规则(隐含规则);清洗工作目录过程文件;第7章Make及makefile文件的编写 ? 1 .概述 C 2. Makefile;Makefile的内容;makefile文件的命名;包含其它的Makefile;MAKEFILES 变量;MAKEFILE_LIST 变量 make程序在读取多个makefile文件时,在对这些文件 进行解析执行之前,将会被自动的追加到变量 “MAKEFILE LIST的定义域中。;make如何解析Makefile;第7章Make及makefile文件的编写 ? 1 .概述 ? 2. Makefile;Makefile 规则;终极目标 终极目标,就是执行make时,没有指明具体目标时 ,make默认的那个目标。 第1个规则有多个目标时,第1个目标为终极目标, 除非以下两种情况 1. 目标名以点号” .”隔开,其后没有斜线”/” 2. 作为模式规则的目标 “终极目标“是执行make的唯一目的,其所在的规 则作为第一个规则。;规则的语法;规则的核心思想 规则的中心思想就是:目标文件的内容是由依赖文 件决定,依赖文件的任何一处改动,将导致目前 已经存在的目标文件的内容过期。规则的命令为 重建目标提供了方法。这些命令运行在系统shell 之上。 规则中的命令被执行有两种情况 1. 目标文件不存在; 2. 存在一个依赖的最后修改时间比目标的最后修改时间 晚;依赖的类型 常规依赖 常规依赖中的任何一个文件更新,都会导致重建目标。常 用的形式 order?only依赖 在更新目标(目标文件已经存在)时,只需要根据依赖文 件中的部分来决

文档评论(0)

yanxiaosa0 + 关注
实名认证
文档贡献者

大家好!本人在此声明:本账号所有文档均出自网络,如有侵权请联系删除。收集归纳不易,请手下留情。

1亿VIP精品文档

相关文档