你将学到的
  • 编译连接与执行
  • make 的条件判断
  • 通配符的简单使用
  • 目标规则与依赖
  • make 内建函数
  • make 的执行过程
  • 目标、依赖与通配符
  • 扩展通配符
  • make 递归执行
  • 自动化编译
课程内容
  共16个章节
实验 1 编译连接与执行

知识点: 1.GCC编译的使用方式 2.GCC链接的使用方式 3.GCC静态链接的使用方式 4.GCC动态链接的使用方式 5.GCC静态链接动态链接混用的方式

挑战 1 四则运算的自动编译

知识点: 1.GCC编译的使用方式 2.GCC链接的使用方式 3.GCC静态链接的使用方式 4.GCC动态链接的使用方式 5.GCC静态链接动态链接混用的方式

实验 2 Makefile 变量进阶

知识点: 1.Makefile的基础规则与命名方式 2.Makefile更新目标文件的依据 3.Makefile依赖执行顺序 4.Makefile变量的使用 5.「PHONY」与「」的作用与使用方法

实验 3 深入了解 Makefile

知识点: 1.make的自动推导规则 2.include指示符 3.MAKEFILES变量 4.makefile重载另一个makefile 5.makefile的「所有匹配模式」的使用

实验 4 make 的执行过程与条件判断

知识点: 1.make读取makefile文件并执行更新和重建操作 2.makefile反斜线的使用 3.makefile中条件语句的基本格式 4.makefile关键字ifeqifneqifdefifndef的使用

实验 5 目标、依赖与通配符

知识点: 1.makefile最终目标的定义 2.makefile不能作为最终目标的情况 3.目标重建的条件 4.makefile目标可以有的两种依赖 5.文件名可以使用的通配符匹配

挑战 2 通配符的简单使用

知识点: 1.Makefile变量的使用 2.Makefile通配符的使用 3.函数$(patsubst)的使用 4.函数$(wildcard)的使用 5.Makefile自动化变量的使用 6.Makefile的自动推导

实验 6 扩展通配符与文件路径问题

知识点: 1.函数wildcard的使用 2.VPATHvpath的使用 3.文件路径的保存及GPATH的使用 4.lNAME文件的使用

实验 7 深入了解目标的规则与依赖

知识点: 1.强制目标的使用 2.多规则目标的使用 3.多目标规则的使用 4.静态模式的使用 5.双冒号规则的使用

挑战 3 静态模式的使用练习

知识点: 1.多目标规则的使用 2.静态模式的使用 3.自动化变量的使用 4.强制目标的使用

实验 8 make 的进阶操作

知识点: 1.make对规则命令的执行 2.make的多线程执行 3.make的错误忽略选项 4.make的异常结束

挑战 4 使用变量控制参数的输入和输出

知识点: 1.Makefile中的define/endef 2.Makefile中变量的使用

实验 9 make 递归执行

知识点: 1.make的递归执行示例 2.递归执行过程中变量的传递 3.测试MAKELEVEL环境变量 4.命令行参数和变量的传递

实验 10 Makefile 变量进阶

知识点: 1.不同的变量风格和赋值风格 2.变量的替换引用,环境变量、命令行变量的使用 3.目标指定变量的使用 4.自动化变量的使用

实验 11 make 内建函数

知识点: 1.字符串处理函数 2.make控制函数 3.文件名处理函数

挑战 5 自动化编译的综合练习

知识点: 1.Makefile变量的使用 2.静态库的打包与使用 3.自动化变量的使用 4.符号「」的使用 5.函数$(src:)的使用 6.函数$(lastword)的使用 7.函数$(wildcard)的使用

课程介绍

本课程主要是让大家学习 Makefile 的基本规则。在正式讲述 make 工具的使用方式和 Makefile 书写规则之前,实验先介绍一些简单的前导知识,这也是 GNU make 官方手册中采用的教学模式。课程将会演示 GNU GCC 编译和链接的基本方法,通过编译、链接、静态链接、动态链接让用户学习和理解 GCC 的使用方式。另一方面,学员也将在实验过程中体验手动编译链接的效率,从而理解自动编译的在项目工程管理中的重要性。

Makefile 是一种描述工程编译、链接的文件。在一个庞大的项目或工程中,往往存在非常复杂的编译和链接流程,而 Makefile 文件可以描述哪些源文件在何时需要编译,如何编译这些源文件,甚至可以调用 shell 和其它的工具来执行更加复杂的项目构建流程。一旦 Makefile 文件构建完毕,用户只需要使用 GNU make 工具读入 Makefile 即可完成整个工程的编译和链接流程,极大提高了项目开发和测试的效率。

先学课程

课程难度

  • 简单

适合人群

  • 有 C 语言基础,了解 Linux 命令使用方法的学员。

课程信息

  • 学习周期:课程有效期 2 个月,2 个月后无法进行在线实验,但可查看文档内容。高级会员有效期内可一直学习,到期后课程失效,且无法查看文档。部分云主机实验环境因成本较高,存在开启次数限制。关于课程退款等相关注意事项说明,请阅读 用户付费协议
  • 版权说明:课程内容为实验楼原创或实验楼在原作者授权下制作。未经书面同意,擅自爬取、转载和再分发课程内容,均将受到严肃追责。
  • 企业团报:企业购买,请点击 企业用户咨询
课程教师

IMHK 共发布过 2 门课程

查看老师的所有课程 >
蓝桥楼+
蓝桥会员
会员
开通会员,即刻开始学习