五、让make自动推导
来源:互联网 发布:软件培训计划 编辑:程序博客网 时间:2024/05/29 15:09
GNU的make很强大,它可以自动推导文件以及文件依赖关系后面的命令,于是我们就没必要去在每一个[.o]文件后都写上类似的命令,因为,我们的make会自动识别,并自己推导命令。
只要make看到一个[.o]文件,它就会自动的把[.c]文件加在依赖关系中,如果make找到一个whatever.o,那么whatever.c,就会是whatever.o的依赖文件。并且 cc -c whatever.c 也会被推导出来,于是,我们的makefile再也不用写得这么复杂。我们的是新的makefile又出炉了。
objects = main.o kbd.o command.o display.o \
insert.o search.o files.o utils.o
edit : $(objects)
cc -o edit $(objects)
main.o : defs.h
kbd.o : defs.h command.h
command.o : defs.h command.h
display.o : defs.h buffer.h
insert.o : defs.h buffer.h
search.o : defs.h buffer.h
files.o : defs.h buffer.h command.h
utils.o : defs.h
.PHONY : clean
clean :
rm edit $(objects)
这种方法,也就是make的“隐晦规则”。上面文件内容中,“.PHONY”表示,clean是个伪目标文件。
关于更为详细的“隐晦规则”和“伪目标文件”,我会在后续给你一一道来。
只要make看到一个[.o]文件,它就会自动的把[.c]文件加在依赖关系中,如果make找到一个whatever.o,那么whatever.c,就会是whatever.o的依赖文件。并且 cc -c whatever.c 也会被推导出来,于是,我们的makefile再也不用写得这么复杂。我们的是新的makefile又出炉了。
objects = main.o kbd.o command.o display.o \
insert.o search.o files.o utils.o
edit : $(objects)
cc -o edit $(objects)
main.o : defs.h
kbd.o : defs.h command.h
command.o : defs.h command.h
display.o : defs.h buffer.h
insert.o : defs.h buffer.h
search.o : defs.h buffer.h
files.o : defs.h buffer.h command.h
utils.o : defs.h
.PHONY : clean
clean :
rm edit $(objects)
这种方法,也就是make的“隐晦规则”。上面文件内容中,“.PHONY”表示,clean是个伪目标文件。
关于更为详细的“隐晦规则”和“伪目标文件”,我会在后续给你一一道来。
- 五、让make自动推导
- 让make自动推导
- Makefile学习之让make自动推导
- make自动推导规则
- make自动推导规则
- 跟我一起写Makefile(4)--- 让make自动推导+另类风格的makefile
- makefile详解 自动推导 五
- Linux之Makefile(make自动推导)
- make 命令的自动推导功能
- 让Makefile自动推导依赖关系
- makefile 自动推导命令
- 模板参数自动推导
- makefile自动推导规则
- makefile自动推导规则
- Makefile详解-自动推导
- 模板参数自动推导
- 如何让linux内核make uImage时Entry Point(入口地址)自动偏移64个字节
- 如何让linux内核make uImage时Entry Point(入口地址)自动偏移64个字节
- windows下文件在linux上乱码解决方法
- gettimeofday() -- 获取当前时间
- 安装搜狗输入法
- (xcode5.0 DEV target:iOS5.0) Could not find a storyboard named 'Main' in bundle
- HTML标签的英文全称与中文释义
- 五、让make自动推导
- 蜻蜓FM笔试总结
- delphi ListView
- #linux命令收集#find
- ajax接收xml数据(简单的注册案例)
- liunx 解压缩和压缩小记
- Android游戏快速入门(二):绘制动态文字和图片
- [每天一个Linux小技巧] makefile 调试小技巧
- Android Push Notification实现信息推送使用