嵌入式笔记5

企业级makefile知识点

条件编译
在这里插入图片描述

#是注释
在这里插入图片描述

查找目录(cd /mnt之后就一直Tab键)
在这里插入图片描述

解压文件
在这里插入图片描述

企业级Makefile编写:

1、 总控makefile:进入各个功能子目录执行make命令,并将所有.o文件生成可执行文件
在这里插入图片描述
2、 功能目录makefile:将功能目录下的所有.c文件编译成.o文件
3、 脚本目录makefile:定义其他makefile文件所用到的变量(3、1、2阅读顺序)

代码字符介绍

在这里插入图片描述

1、 ( w i l d c a r d 模 式 参 数 ) e g : r e s u l t : = (wildcard 模式参数) eg: result: = (wildcard)eg:result:=(wildcard *.c)
result找出当前目录下所有.c文件
在这里插入图片描述

2、 ( p a t s u b s t 模 式 参 数 , 参 数 1 , 参 数 2 ) e g : r e s u l t : (patsubst 模式参数,参数1,参数2) eg: result: (patsubst12)eg:result(patsubst
%.c,%.o,x.c,y.c)
result:=x.o,y.o
如:obj= ( p a t s u b s t (patsubst %.c,%.o, (patsubst(dir)),把上面$(dir)变量里面以.c结尾的文件全部替换为.o结尾。
在这里插入图片描述

3、:=(防止死循环)
a1:=a.o
a2:=$(a1) b.o
a1=a.o a2=a.o b.o
a2 :=a.o
a1 =b.o a2=a.o

4、 +=(给变量追加值)
a1 =a.o
a1 +=b.o
a1= a.o b.o
a1=a.o
a1 :=$(a1) b.o
a1 =a.o b.o

(?= 防止重复定义a1:=a.o a1?=b.o 如果a1未 定义则为新值, 否则为原值)
5、 ( a d d s u f f i x 参 数 1 , 参 数 2 ) r e s u l t : = (addsuffix 参数1,参数2) result:= (addsuffix12)result:=(addsuffix .c,x y)
result=x.c y.c

6、 foreach ( f o r e a c h 变 量 参 数 , 参 数 1 , 表 达 式 ) 功 能 : 循 环 取 出 参 数 1 中 的 单 词 赋 值 给 变 量 参 数 , 然 后 运 行 表 达 式 。 返 回 值 : 表 达 式 运 行 结 果 a : = x y z r e s u l t : = (foreach变量参数,参数1,表达式) 功能:循环取出参数1中的单词赋值给变量参数,然后运行表达式。返回值:表达式运行结果 a:=x y z result:= (foreach1)1a:=xyzresult:=(foreach
b,$(a), $(b).c) result =x.c y.c z.c 7、 ( c a l l 变 量 参 数 , 参 数 … … ) 功 能 : 循 环 把 参 数 依 次 赋 值 给 变 量 参 数 中 的 (call变量参数, 参数……) 功能:循环把参数依次赋值给变量参数中的 (call)(1)、$(2)……返回值:赋值后变量值 a:= $(2) ( 1 ) r e s u l t : = (1) result := (1)result:=(call $(a),x y) result =yx
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_49181551

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值