当前位置: 首页 > news >正文

makefile的特性-部分语法记录

1.变量定义

1.1  = 来实现a1= $(a2)a2 = lib.o1.2 := 来实现, 这种不能通过后面的变量来定义a1 := $(a2) b.0a2 := lib.o1.3 += 来实现a1= b.0a2 += a11.4 ?= 来实现,这种方式前面如果定义了,后面定义则无效a1 := a.oa1 ?= lib.o  //结果 a1 = a.o

2.文件查找

2.1 VPATH = 目录 : 目录VPATH = /usr : /proc  在当前路径查找不到后,这样会依次按顺序查找这些目录2.2 vpath   %.c    /usr  :   /proc 在当前路径查找不到后,这样会依次按顺序查找这些目录的C文件

3. 常用的基本函数

3.1 $(subst  参数1,参数2 , 参数3)把参数3中的参数1替换成参数2,然后返回被替换后的参数33.2 $(patsubst 模式格式,参数1,参数2)把参数2中符合模式的单词替换成参数1中ret = $(patsubst %c,%.o,a.c b.c)    //ret 为a.o b.o3.3. $(wildcard 模式参数)列出当前目录下所有符合参数的文件名ret := $(wildcard *.c)    //当前目录下所有C文件3.4 $(findstring 参数1, 参数2)在参数2中查找参数13.5 $(filter 模式参数,参数1)从参数1中筛选出符合模式参数的字符串obj = a.c  b.c  a.h  b.hret := $(filter %.c,$(obj))  //ret = a.c b.c3.6 $(dir 参数) 从参数中取出目录部分ret := $(dir /home/usr/lib/a.o)   //ret =  /home/usr/lib/ 3.7 $(if 条件参数, 执行参数)如果条件参数为空,运行执行参数部分
http://www.lryc.cn/news/192626.html

相关文章:

  • 【Java 进阶篇】JavaScript 正则表达式(RegExp)详解
  • 51单片机之串口通信例程
  • Hadoop高可用集群(HA)一键启动脚本
  • C#开发的OpenRA游戏之金钱系统(1)
  • Puppeteer监听网络请求、爬取网页图片(二)
  • GoLang连接mysql数据库
  • 软件工程与计算总结(八)软件设计基础
  • someip 入门
  • C# 使用Parallel去执行并行下载
  • @Component 和 @Bean的区别
  • 百度测试开发工程师面试心得
  • 发现更多美景!XnViewMP for Mac/Windows 图片浏览软件
  • 城市广告牌安全传感器特点有哪些?
  • 源码部署lamt架构
  • 【Java 进阶篇】JavaScript Math对象详解
  • geecg-uniapp 路由修改 页面创建 (2)
  • 微信开发者工具下载
  • ctfshow萌新计划web9-14(正则匹配绕过)
  • 【数据结构】单链表按位序插入元素e【前插】(带头结点的和不带头结点的)这篇很重要,文字说明比起其他篇是正确的
  • Maven Surefire Exclude 无效问题排查日志
  • ArcGIS笔记4_水动力模型验证不理想时如何修改局部水深地形
  • 介绍一下mysql有哪些索引类型
  • #力扣:125. 验证回文串@FDDLC
  • 分享一下便利店怎么做微信小程序
  • Gitlab CI/CD 入门教程
  • 【mfc/VS2022】计图实验:绘图工具设计知识笔记
  • C# PortraitModeFilter (人物图片)背景模糊
  • centos7下安装elasticsearch7.8.1并配置远程连接
  • MongoDB的作用和安装方法
  • spring boot 使用SSE向前端推送数据