当前位置:网站首页>Makefile自动推导的简单例程
Makefile自动推导的简单例程
2022-08-03 05:24:00 【langaopeng】
最近在深入的研究Makefile的编译过程。发现看Makefile代码时,觉得挺简单。其实不然,当你合上课本写的时候,发现有时就是不按照你的思想走。下面我用最简单的例子分享一下Makefile自动根据C代码的include情况推导规则。
1 在同一个目录下建立test.c,test_sub.c,test.h, test1.h, test2.h。test.c包含test.h,test.h包含test1.h,test1.h包含test2.h。
Makefile代码如下:
src :=test.c test_sub.c
obj:=$(src:.c=.o)
def:=$(src:.d=.o)
IFLAGS:= -I.
test:$(obj)
cc -o test $(obj) $(LDFLAGS) $(IFLAGS)
%.d:%.c
cc -MF $(@:%.o=%.d) -o @ -M $^ #生成test.d test_sub.d 内容为:test.o:test.c .....
sed -i 's/\(.*\)\.o:/\1\.o \1\.d:/g' [email protected] #将test.o:test.c变成test.o test.d:test.c .....
-include $(def) #包含.d文件,自动推导成隐晦规则
.PHONY : clean
clean:
-rm $(obj) $(def)
边栏推荐
猜你喜欢

自监督论文阅读笔记 TASK-RELATED SELF-SUPERVISED LEARNING FOR REMOTE SENSING IMAGE CHANGE DETECTION
![[frp intranet penetration]](/img/5c/ca18bef3e5fec279c19825ee93b34b.png)
[frp intranet penetration]

梯度下降、反向传播

Let small program development into ` tailwind jit ` era

设备树解析源码分析<devicetree>-1.基础结构

自监督论文阅读笔记 Self-supervised Label Augmentation via Input Transformations

Ansible installation and deployment detailed process, basic operation of configuration inventory
ASP.NET MVC3的伪静态实现

【DC-5 Range Penetration】

自监督论文阅读笔记 Multi-motion and Appearance Self-Supervised Moving Object Detection
随机推荐
Kettle 从资源库中载入新的转换出错(Invalid byte 1 of 1-byte UTF-8 sequence)
Router-view
中国生物反应器行业市场投资分析及前景预测报告2022~2028年
【第一周】深度学习和pytorch基础
西塞罗 论老年
new / malloc / delete / free之间的区别
当奈飞的NFT忘记了web2的业务安全
【DC-2 Range Penetration】
梯度下降、反向传播
Oracle 日历表详解(含节假日)
东南亚跨境电商
自监督论文阅读笔记: MoCoV2使用动量对比学习改进基线
自监督论文阅读笔记 Incremental-DETR:Incremental Few-Shot Object Detection via Self-Supervised Learning
Mysql 存储过程详解(procedure)
【 Nmap and Metasploit common commands 】
Qlik Sense 临时处理表数据详解(Resident)
磁盘空间管理
动漫:海贼王女
自监督论文阅读笔记DisCo: Remedy Self-supervised Learning on Lightweight Models with Distilled Contrastive
中国聚氯乙烯(PVC)土工膜发展动态及投资前景预测报告2022~2028年