Makefile的补充学习
通配符%和Makefile自动推导(规则)
(1)%是Makefile中的通配符,代表一个或几个字母。也就是说%.o就代表所有以.o为结尾的文件。
(2)所谓自动推导其实就是Makefile的规则。当Makefile需要某一个目标时,他会把这个目标去套规则说明,一旦套上了某个规则说明,则Makefile会试图寻找这个规则中的依赖,如果能找到则会执行这个规则用依赖生成目标。
Makfile中引用其他Makefile(include指令)
(1)有时候Makefile总体比较复杂,因此分成好几个Makefile来写。然后在主Makefile中引用其他的,用include指令来引用。引用的效果也是原地展开,和C语言中的头文件包含非常相似。
命令前面的@用来静默执行
(1)在makefile的命令行中前面的@表示静默执行。
(2)Makefile中默认情况下在执行一行命令前会先把这行命令给打印出来,然后再执行这行命令。
(3)如果你不想看到命令本身,只想看到命令执行就静默执行即可。
Makefile中几种变量赋值运算符
(1)= 最简单的赋值。但是用的时候非常注意,如果变量后面还有从新赋值,那么解析的时候是最后一次赋值为准。
(2):= 一般也是赋值
以上这两个大部分情况下效果是一样的,但是有时候不一样。
用=赋值的变量,在被解析时他的值取决于最后一次赋值时的值,所以你看变量引用的值时不能只往前面看,还要往后面看。
用:=来赋值的,则是就地直接解析,只用往前看即可。
(3)?= 如果变量前面并没有赋值过则执行这条赋值,如果前面已经赋值过了则本行被忽略。(实验可以看出:所谓的没有赋值过其实就是这个变量没有被定义过,例 var=" ", var= ,都)
(4)+= 用来给一个已经赋值的变量接续赋值,意思就是把这次的值加到原来的值的后面,有点类似于strcat。(在shell makefile等文件中,可以认为所有变量都是字符串,+=就相当于给字符串stcat接续内容)(注意一个细节,+=续接的内容和原来的内容之间会自动加一个空格隔开)
转载于:https://www.cnblogs.com/yygsj/p/5204368.html
Makefile的补充学习相关推荐
- Proxy 补充学习笔记
Proxy 补充学习笔记 1.基本使用 let obj = new Proxy({},{get:function(target,key,receiver){console.log('获取值');},s ...
- 【Makefile由浅入深完全学习记录1】认识make和makefile
学习交流加 个人qq: 1126137994 个人微信: liu1126137994 学习交流资源分享qq群: 962535112 今天开始学习项目又多了一项:Makefile由浅入深完全学习.之前做 ...
- 【致敬未来的攻城狮计划】— 连续打卡第三天:欲速则不达,今天是对RA2E1 基础知识的补充学习。
系列文章目录 1.连续打卡第一天:提前对CPK_RA2E1是瑞萨RA系列开发板的初体验,了解一下 2.开发环境的选择和调试(从零开始,加油) 文章目录 目录 系列文章目录 文章目录 前言 一.RA是什 ...
- 【Makefile由浅入深完全学习记录8】条件判断语句
加qq:1126137994 微信:liu1126137994 一起学习更多技术~ 今天来学习Makefile中条件判断语句! Makefile也算是一门语言,它有自己的语法,那么它应该也会像C/C+ ...
- 【Makefile由浅入深完全学习记录7】Makefile中变量的高级主题下
加qq:1126137994 微信:liu1126137994 一起学习更多技术~ 继续上一篇文章关于变量的学习! 1.环境变量(全局变量) -makefile中能够直接使用环境变量的值 如果make ...
- 【Makefile由浅入深完全学习记录6】Makefile中变量的高级主题上
抓住基础,学习更多技术,迎接挑战,加qq:1126137994 微信:liu1126137994 一起学习更多技术~ 上一篇文章学习了makefile中的预定义变量的使用,今天来继续学习makefil ...
- 【Makefile由浅入深完全学习记录5】预定义变量的使用
今天学习Makefile预定义变量的使用,加qq:1126137994.微信:liu1126137994一起学习更多技术!!! 1.预定义变量:自动变量 在Makefile中存在一些预定义过的变量,我 ...
- 【Makefile由浅入深完全学习记录4】变量和不同的赋值方式
今天来学习Makefile中变量的不同的赋值方式!努力的意义就是让贫穷不再限制你的想象!加qq共同学习交流1126137994 1.概念 makefile中支持程序设计中变量的概念 makefile中 ...
- 【Makefile由浅入深完全学习记录3】伪目标的引入
只有不停的努力,才能看起来很轻松!!!加qq1126137994共同学习探讨更多技术!!! 1.思考: makefile中的目标究竟是什么? 在默认的情况下: make认为目标对应一个文件 make比 ...
最新文章
- Annoy搜索算法(Approximate Nearest Neighbors Oh Yeah)
- oracle存储过程调用游标例子
- Tomcat User 配置
- 7.wait和waitpid
- 计算机专业多媒体技术学什么,计算机多媒体技术需要学习哪些知识
- linux的mount命令详解
- 惠普服务器ssa找不到控制卡,DL380 Gen10服务器Vmware ESXi 6.0 系统SSACLI工具
- ANDROID 中设计模式的採用--结构型模式
- SBCL 使用中文时的错误记录 --close 问题已经解决
- 数建--LINGO软件介绍
- Java高级工程师面试题总结及参考答案
- ADS学习:谐波分析和参数扫描
- 一文详解蒙特卡洛(Monte Carlo)法及其应用
- UE4 Pak包热更新
- 读心神探感悟 读心神探 语录 读心神探 观后感
- 熊猫直播P2P分享率优化(上):IP组网
- SIP协议及其简单介绍
- 2021-2027全球与中国多媒体教室投影仪市场现状及未来发展趋势
- 3.3V和1.8V电平双向转换
- 暴力枚举题:平面上的点与外心
热门文章
- koa-中间件流程控制
- matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置
- Unix/Linux环境C编程入门教程(39) shell命令之系统管理
- [.NET] Rough Dependency Injection
- python iot平台_Python MQTT连接到Azure Iot中心
- Linux中如何将文件dump成16进制值
- 使用nsenter进入docker namespace
- leetcode算法题--对称的二叉树
- 南外计算机课,南外小升初,怎么考?
- Lambda 表达式(=):网络摘抄,自学用,侵删。