makefile规则
日期:2008年2月12日 作者:-
目录
1.简介 3
1.1.准备工作 3
1.2.Makefile介绍 3
1.3.规则简介 4
1.4.make工作原理 4
1.5.使用变量 5
1.6.简化命令 6
1.7.另一种风格 6
1.8.清理 7
2.Makefile 7
2.1.makefile名字 7
2.2.包含 8
2.3.‘MAKEFILE’变量 8
2.4.如何重新生成makefile 8
2.5.重载makefile 9
3.规则 9
3.1.例子 9
3.2.规则的语法 9
3.3.通配符 10
3.3.1.通配符的缺陷 10
3.3.2.wildcard函数 11
3.4.目录搜索 11
3.4.1.‘VPATH’ 11
3.4.2.选择性搜索 12
3.4.3.使用自动变量 12
3.4.4.目录搜索和隐含规则 12
3.5.PHONY目标 13
3.6.FORCE目标 14
3.7.空目标 14
3.8.内建的特殊目标 14
3.9.一个规则多个目标 15
3.10.一个目标多条规则 15
3.11.静态模式规则 16
3.11.1.语法 16
3.11.2.静态模式规则和隐式规则 17
3.12.双冒号规则 17
3.13.自动生成依赖关系 17
4.编写命令 18
4.1.回显 18
4.2.执行 19
4.3.并行执行 19
4.4.错误 19
4.5.中断make 20
4.6.递归使用 20
4.6.1.‘MAKE’变量 20
4.6.2.传递变量到子make 21
5.命令行参数 21
6.参考 25
6.1.指令 25
6.2.函数 26
6.3.自动变量 27
6.4.特殊变量 29
GNU Make使用
Make 程序最初设计是为了维护C程序文件防止不必要的重新编译。在使用命令行编译器的时候,修改了一个工程中的头文件,如何确保包含这个头文件的所有文件都得到编译?现在10机的版本生成是使用批处理程序,编译那些文件依赖于程序的维护者,在模块之间相互引用头文件的情况下,要将所有需要重新编译的文件找出来是一件痛苦的事情;在找到这些文件之后,修改批处理进行编译。实际上这些工作可以让make程序来自动完成,make工具对于维护一些具有相互依赖关系的文件特别有用,它对文件和命令的联系(在文件改变时调用来更新其它文件的程序)提供一套编码方法。Make工具的基本概念类似于Proglog语言,你告诉make需要做什么,提供一些规则,make来完成剩下的工作。
1.简介
make工作自动确定工程的哪部分需要重新编译,执行命令去编译它们。虽然make多用于C程序,然而只要提供命令行的编译器,你可以将其用于任何语言。实际上,make工具的应用范围不仅于编程,你可以描述任和一些文件改变需要自动更新另一些文件的任务来使用它。
1.1.准备工作
如果要使用make,你必须写一个叫做“makefile”的文件,这个文件描述工程中文件之间的关系,提供更新每个文件的命令。典型的工程是这样的:可执行文件靠目标文件来更新,目标文件靠编译源文件来更新。
Makefile写好之后,每次更改了源文件后,只要执行make就足够了,所有必要的重新编译将执行。Make程序利用makefile中的数据库和文件的最后修改时间来确定那个文件需要更新;对于需要更新的文件,make执行数据库中记录的命令。
可以提供命令行参数给make来控制那个文件需要重新编译。
1.2.Makefile介绍
Makefile文件告诉make做什么,多数情况是怎样编译和链接一个程序。
这里有一个简单的makefile,描述如何编译链接由8个C文件和3个头文件组成的一个编辑器:
edit : main.o kbd.o command.o display.o
insert.o serach.o files.o utils.o - [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] 下一页
-
- makefile规则 相关文章:
- ·一个浙江人的22条经典经商法则(很值得借鉴)
- ·最详细的黑客入门法则
- ·陈安之超级成功法则
- ·makefile规则
- ·Intel CPU命名规则
- ·老板创业成功36条法则!
- ·新东方俞敏洪寓言故事七则
- ·Word制作贺卡实例一则
- ·[Regex]笑容的正则表达式大全
- ·单身女人的10个"NO"原则
- makefile规则 相关软件
- ·无规则高尔夫大师赛
- ·细胞分裂3:混沌法则 免CD补丁
- ·潜规则:中国历史中的真实游戏
- ·武则天四大奇案
- ·十则成功誓言
- ·彩虹六号:禁锢法则
- ·正则表达式工具 Match Tracer V1.2
- ·植木的法则汉化版
- ·细胞分裂:混沌法则
- ·最小的正则表达式分析工具 V1.9
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:c语言中的结构(struct)和联合(union)简介
下一篇:在vc++系统中编译和运行c语言
精品推荐
热点TOP10
特别推荐
- ·C语言常用的三种排序方法总结与探讨
- ·C/C++笔试、面试题目大汇总
- ·C#基础概念二十五问
- ·利用C#远程存取Access数据库
- ·入门教程:实例详解C++友元
- ·C语言基础教程(三)输入输出函数及控制流程语句
- ·VC下调用ACM音频编程接口压缩Wave音频
- ·如何在C/C++中调用Java
- ·设计的一个计算器类的源代码,很简陋哦,请各位高手不要见笑!
- ·gSOAP中内存的使用
- ·Windows下C语言网络编程快速入门
- ·C语言教程第六章:指针
- ·漫谈C++ Builder多线程编程技术
- ·学生成绩管理系统实习
- ·用C#实现pdf文件的完整性验证
- ·将程序从托管扩展 C++ 迁移到 C++/CLI(1)
- ·链表的c语言实现(六)
- ·C语言库函数 (D类字母)
- ·用AVIFile函数制做AVI文件基本步骤
- ·利用C++实现的贪吃蛇游戏
