Makefile 零基础学习笔记:subst 的用法
前言
- 阅读Makefile 文件时,常遇到
subst
的使用,这个subst
到底起了什么作用呢? - 通过查看 gnu make 的手册:可以清楚这个
subst
作用就是:替换,把一个字符串替换成另一个字符串
语法
- 这个参考 gnu make 手册:手册官方的下载地址为:
https://www.gnu.org/software/make/manual/,可以下载pdf格式,方便后面慢慢查看 subst
的官方解释比较的简单:就是使用to
替换from
,官方的示例:$(subst ee,EE,feet on the street)
执行完后为:fEEt on the strEEt
,也就是使用EE
全部替换了ee
,类似于replace
测试一下
- 这里编写一个简单的Makefile
CROSS_COMPILE := CONFIG_CROSS_COMPILER_PREFIX=arm-linux-gnueabi-
CROSS_COMPILE := $(subst CONFIG_CROSS_COMPILER_PREFIX=,,$(CROSS_COMPILE))all :@echo $(CROSS_COMPILE)
- make 运行(Cygwin64 Terminal )效果
$ make
arm-linux-gnueabi-
- 发现把
CONFIG_CROSS_COMPILER_PREFIX=
替换为 空字符串口了,也就是获取到了=
后面的字符串:arm-linux-gnueabi-
小结
subst
主要用于字符串的替换,返回 替换后的字符串- Makefile 的验证很简单,编写Makefile文件,可以使用 【Cygwin64 】运行
make
即可验证效果
Makefile 零基础学习笔记:subst 的用法相关推荐
- Makefile 零基础学习笔记:if 的用法
前言 Makefile 在嵌入式开发中比较的常见,尤其是Linux.Android开发中,这是工程构建的标配 可以通过熟悉一个Makefile,并实际验证,了解常见的Makefile的语法格式与编写技 ...
- SQL零基础学习笔记(一)
真的不知道我写了这么多不同的的学习笔记又没用..开始SQL零基础学习笔记 百度百科:SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取 ...
- 【Java】Java零基础学习笔记
文章目录 前言 思维导图 前期准备 卸载JDK 安装JDK Hello,world 可能遇到情况 java程序运行机制 IDEA的安装 java基础部分 基础语法 运算符 包机制 javaDoc文档手 ...
- Docker零基础学习笔记
零基础学习Docker Docker官方文档 基础语法 docker pull: 从DockerHub上拉取镜像 $ docker pull ngnix Using default tag: late ...
- 零基础学习笔记 - ADF4159
目录 1.准备工作 1.1.前言 1.2.资料 1.3.介绍 1.4.应用 1.5.应用电路 2.ADF4159 2.1.功能框图 2.2.通信协议时序 2.2.寄存器 2.2.0.注意 2.2.1. ...
- HTML+CSS零基础学习笔记(五)— 模拟淘宝首页(静态)
内容概览 模拟淘宝首页(静态) 一.项目重难点 二.效果图及源码 模拟淘宝首页(静态) 一.项目重难点 样式重置:在实际开发过程中,我们往往会新建一个单独的CSS文件(reset.css),用于对应H ...
- (Java零基础学习笔记)第二章 Java中的基本语法
前言: 大家好! 我是BA unravel .如果你想和我一起学习JAVA,欢迎大家一起来学习这个世界上最好的语言! 学习目标: 一周掌握 Java 入门知识 学习内容: 1. 搭建 Java 开发环 ...
- 古月居《ROS入门21讲》零基础学习笔记
文章目录 前言 1.课程简介 2.Linux系统介绍及安装 3.Linux基础操作(操作集) 命令结构 常用命令 快捷操作 4.cpp&python极简基础(操作集) 简单对比 安装编译器 编 ...
- web零基础学习笔记
常见编码有:ANSI .GBK .GB2312. UTF-8. GB18030 .UNICODE:一般用UTF-8,<meta charset="UTF-8" /> 内 ...
最新文章
- 5年Python功力,总结了10个开发技巧
- Windows下Rtools环境安装
- 变速后没有声音_CVT不仅平顺省油还是运动型变速箱?
- 翻译-Salt与Ansible全方位比较
- 0421 版本适配和本地化
- 每个Java应用容器都要包含tomcat_部署一个不依赖tomcat容器的应用
- 机器学习中的随机过程_机器学习过程
- 【C语言简单说】十三:变量的生命周期
- FileStream功能被禁用
- Java基础:什么是返回对象
- 概率论与数理统计图解
- 30岁软件测试转产品_补水抗皱紧致护肤产品盘点 护肤品排行榜前十名适合30-40岁...
- mysql limti_MYSQL分页 limint
- udp java 检测连接_java创建udp连接 java udp怎样测试是否连接
- 超链接 qq群一键添加
- 从存活了1441年的企业,我们能学到什么?
- 「自动搬运+CDN」FFmpeg + x264 t_mod + x265 yuuki
- 聚合支付的清算风险有哪些?
- JavaScript中的数据类型判断
- python中,Microsoft Visual C++ 14.0 or greater is required问题解决方案