1、wildcard : 扩展通配符
2、notdir : 去除路径
3、patsubst
:替换通配符
例子:
建立一个测试目录,在测试目录下建立一个名为sub的子目录
$ mkdir test
$ cd
test
$ mkdir sub
在test下,建立a.c和b.c2个文件,在sub目录下,建立sa.c和sb.c2
个文件
建立一个简单的Makefile
src=$(wildcard *.c ./sub/*.c)
dir=$(notdir
$(src))
obj=$(patsubst %.c,%.o,$(dir) )
all:
@echo $(src)
@echo
$(dir)
@echo $(obj)
@echo "end"
执行结果分析:
第一行输出:
a.c b.c
./sub/sa.c ./sub/sb.c
wildcard把 指定目录 ./ 和 ./sub/
下的所有后缀是c的文件全部展开。
第二行输出:
a.c b.c sa.c
sb.c
notdir把展开的文件去除掉路径信息
第三行输出:
a.o b.o sa.o
sb.o
在$(patsubst %.c,%.o,$(dir)
)中,patsubst把$(dir)中的变量符合后缀是.c的全部替换成.o,
任何输出。
或者可以使用
obj=$(dir:%.c=%.o)
效果也是一样的。
这里用到makefile里的替换引用规则,即用您指定的变量替换另一个变量。
它的标准格式是
$(var:a=b)
或 ${var:a=b}
它的含义是把变量var中的每一个值结尾用b替换掉a
相关推荐
Spring Boot 微服务 API 网关实战:Spring Cloud Gateway 整合,搞定路由转发 + 统一认证 + 限流熔断(企业级落地)
摘要:本文详细介绍了SpringCloud Gateway在微服务架构中的核心作用与实现方案。作为API网关,它解决了服务入口分散、认证冗余、流量失控等痛点,提供路由转发、统一认证、限流熔断等能力。文章通过图书管理系统案例,演示了SpringBoot整合Gateway的全流程,包括基础路由配置、JWT全局认证、局部参数校验、Sentinel限流熔断以及Nacos动态路由等核心功能实现。特别强调了企业级落地中的关键注意事项,如路由顺序、过滤器执行顺序、HTTPS配置等。该方案能有效构建统一、安全、高效的微服务
makefile中wildcard的理解
wildcard 用来明确表示通配符。因为在 Makefile 里,变量实质上就是 C/C++ 中的宏,也就是说,如果一个表达式如 objs = *.o ,则 objs 的值就是 *.o ,而不是表示所有的 .o 文件。若果要使用通配符,那么就要使用 wildcard 来声明 * 这个符号,使 * 符号具有通配符的功能。如下举例: 在当前目录下随意建立两个 *.c 文件,如 hello.c 和 world.c ,现在编写一个 Makefile 如下: src = $(wildcard *.c /usr/sr
论文理解【LLM-OR】—— 【PaMOP】Guiding Large Language Models in Modeling Optimization Problem
针对 LLM 求解运筹优化任务,PaMOP 通过约束划分树分离子问题,实现复杂优化问题的分块建模,并结合求解器反馈与反向翻译一致性检查迭代纠错,降低子任务复杂度,提升可执行率与建模准确性。
makefile之wildcard
这样我们就可以得到在当前目录可生成的.o文件列表。展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。假如不存在任何符合此模式的文件,函数会忽略模式字符并返回空。
前沿数据解析 | 麻省理工-斯坦福-丰田研究中心电池数据集:AI驱动下的电池寿命早期预测
本文解析了麻省理工、斯坦福与丰田研究中心联合发布的电池数据集,展示了AI驱动下的电池寿命早期预测技术。通过分析124个商用锂离子电池的完整生命周期数据,研究团队仅用前100次循环数据即可准确预测电池报废时间,为电动汽车电池管理提供革命性解决方案。数据集包含LFP/石墨体系电池的详细测试记录,结合差分容量分析和梯度提升树模型,预测精度显著提升。
STM32 超声波模块输入捕获测距(标准库)
通道2设置为下降沿触发,触发瞬间会将CNT的记录到CCR2中,由于上升沿触发时已经将CNT置零所以此时的CNT的值就是高电平的持续时间。通道1设置为上升沿触发,触发的瞬间会将CNT的值记录到CCR1里面,同时设置通道1触发带有从模式,并把从模式设置为置零CNT。超声波传感器模块上面通常有两个超声波元器件,一个用于发射,一个用于接收。电路板上有四个引脚:VCC、GND、Trig(触发)、Echo(回应)。输入捕获原理可以看看这位大佬,感觉写的很清楚,工作电压与电流:5V,15mA。感测角度:不小于15度。
Makefile中wildcard使用方法
Makefile中wildcard函数使用方法 Makefile用于管理工程编译,作为一种管理工具,内部包含相关处理函数,其中wildcard就是makefile文件中的一个函数。 一、wildcard作用 显示指定路径下指定文件类型的所有文件。 二、格式 $(wildcard 指定文件类型) 三、实例 图1 源文件结构 图2 wildcard实例 ...
Windows10下安装VMware16虚拟机
由于本人系统为Windows 10 家庭中文版,无法安装Linux子系统WSL,虽然网上也有强制安装的方法,但为保险起见,还是把之前的VMware虚拟机重新进行安装,并浅浅记录一下安装过程。
Makefile中函数wildcard
<br />函数wildcard<br /><br /> 在规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数 “wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回 空。需要注意的是:这种情况下规则中通配符的展开和上一小节匹配通配符的区别。<br /> 一般我们可
大数据领域数据产品的团队激励与绩效管理
在大数据领域,数据产品的成功离不开高效协作的团队。团队激励与绩效管理的目的在于激发团队成员的工作热情和创造力,提高工作效率和质量,确保数据产品能够按时、高质量地交付。本文章的范围涵盖了大数据领域数据产品团队激励与绩效管理的各个方面,包括激励机制的设计、绩效评估的方法、团队沟通与协作等。本文将按照以下结构进行阐述:首先介绍核心概念与联系,明确相关概念的定义和相互关系;接着讲解核心算法原理和具体操作步骤,为团队激励与绩效管理提供理论支持和实践指导;然后分析数学模型和公式,帮助读者深入理解绩效评估的原理;
Ollama DNS 重新绑定攻击 (CVE-2024-28224)
一旦 DNS 重新绑定攻击成功,攻击者就可以对这些 API 进行排序,以读取 Ollama 运行的进程可访问的任意文件数据,并将这些数据泄露到攻击者控制的系统中。完成对“创建模型” API 请求的调用后,Ollama 将收集组成新创建的用户模型的许多工件,包括大型语言模型数据、许可证数据等,以及我们要提取的文件,所有这些都可以通过其 SHA256 内容进行寻址。这是我们要窃取的文件,在我们的示例中,是可通过运行 Ollama 的主机上的路径名访问的现有文本文件。值得注意的是,该模型配置为通过参数中的。
【ARM 嵌入式 编译 Makefile 系列 17 - Makefile 函数 wildcard 使用详细介绍】
wildcard函数是Makefile中的一个内建函数,用于获取符合特定模式的文件名列表。例如,会获取当前目录下所有以.c为扩展名的文件列表。一个更具体的例子:假设我们有一个目录,其中包含多个C源文件,我们可以使用wildcard函数来获取这些源文件的列表,然后生成目标文件列表,并编写规则来编译这些源文件。all:在这个例子中,会获取所有.c文件,然后我们使用模式替换来生成所有.o文件。规则%.o: %.c表示每个.o文件都依赖于同名的.c文件。如果某个.c文件发生了改变,那么对应的.o。
Opencascade 保存点云为 .stp 和 .step 格式
总结一下,OpenCascade提供了强大的功能和工具,使我们能够方便地将点云数据保存为 .stp 和 .step 格式。通过使用类似于上述示例代码的方法,你可以使用OpenCascade库将点云数据保存为.STP和.STEP格式。总结一下,使用OpenCascade库,你可以方便地将点云数据保存为.STP和.STEP格式。通过使用类似于上述示例代码的方法,你可以将点云数据转换为OpenCascade的几何模型,并将其保存为所需的文件格式。请注意,上述代码仅涵盖了将点云数据保存为.STP格式的基本步骤。
Makefile中的wildcard用法
<br />在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...)。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展开和上一小节匹配通配符的区别。<br />一般我们可以使用“$(wildcard *.c)”来获取工作
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
大中型超市收银系统(可直接运行)
光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开
makefile的wildcard函数
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展...
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
makefile 去除空格_Makefile中wildcard的介绍
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展...
LinePhone3.2.7(android端最新版本) sip客户端
SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/
Makefile中的wildcard杂记
关于在Makefile中的wildcard的一些记录和说明。 wildcard是一个扩展通配符,它的作用是什么呢? 在Makefile规则中,通配符会被自动展开,但是遇到变量定义和函数引用是会失效,在这钟情况下如果想要通配符有效就需要用到wildcard, 用法规则:$(wildcard, PATTERN…) 在Makefile中,他被展开为已存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展开和上一小节匹配
makefile--wildcard关键字
我们首先来看一个简单的makefile,该文件的目的是将该文件夹下的所有.c文件编译链接为可执行文件test。我们可以这么写: all: armcc -o test a.c b.c c.c d.c 现在我们采用定义变量的方式进行简化(*是通配符,*.c表示所有的.c文件) SRC = *.c all: armcc -o test ${SRC} 注意红色方框框出来的区别!! 这个地方SRC变量并没有展开为当前路径下的所有.c文件的列表,这是因为: 1、Makefile中的变量.
makefile 中wildcard
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...)。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中...
Makefile规则中的 wildcard
转自原文:https://blog.csdn.net/liangkaiming/article/details/6267357 感谢,侵删 Makefile规则中的 wildcard 在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN...) 。...
【makefile笔记】patsubst和wildcard函数使用小结
0x00 前言 文章中的文字可能存在语法错误以及标点错误,请谅解; 如果在文章中发现代码错误或其它问题请告知,感谢! 0x01 makefile函数调用语法 makefile函数调用原型: $(<function> <arguments>) #或 ${<function> <arguments>} 函数的调用以$开头,用{}或者()将函数名以及参数包含起来,<function>为函数名,<arguments>为参数,两者之间以空格分隔
Makefile中wildcard函数的应用理解
通配符"*"在变量和函数中使用失效时,使用函数wildcard使能通配功能。
Makefile中wildcard、patsubst、notdir的含义
参考文章:Makefile中wildcard的介绍
Makefile中wildcard的介绍
在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcard PATTERN…) 。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展开和...
1381



被折叠的 条评论
为什么被折叠?



