什么是makefile? 如何编写makefile?


Posted in 面试题 onJanuary 02, 2013
makefile:一个文本形式的文件,其中包含一些规则告诉make编译哪些文件以及怎样编译这些文件,每条规则包含以下内容:
一个target,即最终创建的东西
一个和多个dependencies列表,通常是编译目标文件所需要的其他文件
需要执行的一系列commands,用于从指定的相关文件创建目标文件
make执行时按顺序查找名为GNUmakefile,makefile或者Makefile文件,通常,大多数人常用Makefile
Makefile规则:
target: dependency dependency [..] command command [..]
注意:command前面必须是制表符
例子:
editor: editor.o screen.o keyboard.o
gcc -o editor editor.o screen.o keyboard.o
editor.o : editor.c editor.h keyboard.h screen.h
gcc -c editor.c
screen.o: screen.c screen.h
gcc -c screen.c
keyboard.o : keyboard.c keyboard.h
gcc -c keyboard.c
clean:
rm editor *.o

Tags in this post...

面试题 相关文章推荐
介绍一下.NET构架下remoting和webservice
May 08 面试题
什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
Jul 26 面试题
使用C#编写创建一个线程的代码
Jan 22 面试题
linux面试题参考答案(7)
Jul 24 面试题
Linux上比较文件的命令都有哪些
Feb 24 面试题
一套软件测试笔试题
Jul 25 面试题
提高EJB性能都有哪些技巧
Mar 25 面试题
如何整合JQuery和Prototype
Jan 31 面试题
什么是lambda函数
Sep 17 面试题
int和Integer有什么区别
May 25 面试题
WebSphere面试题:在WebSphere里面如何部署一个应用
Aug 02 面试题
Exception类的常用方法
Jun 16 面试题
介绍一下grep命令的使用
Jun 12 #面试题
Linux中如何用命令创建目录
Jan 12 #面试题
Linux不知道文件后缀名怎么判断文件类型
Aug 21 #面试题
Linux管理员面试题 Linux admin interview questions
Jul 08 #面试题
shell程序中如何注释
Jan 28 #面试题
Linux Interview Questions For software testers
May 17 #面试题
Linux的文件类型
Jul 05 #面试题
You might like
php 文件上传系统手记
2009/10/26 PHP
ie与session丢失(新窗口cookie丢失)实测及解决方案
2013/07/15 PHP
php is_writable判断文件是否可写实例代码
2016/10/13 PHP
php mysql_list_dbs()函数用法示例
2017/03/29 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
dtree 网页树状菜单及传递对象集合到js内,动态生成节点
2012/04/14 Javascript
JavaScript实现拼音排序的方法
2012/11/20 Javascript
jQuery的选择器中的通配符使用介绍
2014/03/20 Javascript
jquery跟js初始化加载的多种方法及区别介绍
2014/04/02 Javascript
avascript中的自执行匿名函数应用示例
2014/09/15 Javascript
js获取form的方法
2015/05/06 Javascript
小程序指纹验证的实现代码
2018/12/04 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
通过Nodejs搭建网站简单实现注册登录流程
2019/06/14 NodeJs
JavaScript中var的重要性实例分析
2019/07/09 Javascript
微信小程序使用echarts获取数据并生成折线图
2019/10/16 Javascript
浅谈vue异步数据影响页面渲染
2019/10/29 Javascript
[39:52]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第一场
2018/04/04 DOTA
python函数局部变量用法实例分析
2015/08/04 Python
python3设计模式之简单工厂模式
2017/10/17 Python
利用Django-environ如何区分不同环境
2018/08/26 Python
python事件驱动event实现详解
2018/11/21 Python
详解分布式任务队列Celery使用说明
2018/11/29 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
html5声频audio和视频video等新特性详细说明
2012/12/26 HTML / CSS
新西兰珠宝品牌:Michael Hill
2017/09/16 全球购物
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
旅游个人求职信范文
2014/01/30 职场文书
铲车司机岗位职责
2014/03/15 职场文书
《特殊的葬礼》教学反思
2014/04/27 职场文书
获奖感言范文
2015/07/31 职场文书
自己搭建resnet18网络并加载torchvision自带权重的操作
2021/05/13 Python
Springboot如何同时装配两个相同类型数据库
2021/11/17 Java/Android
mysql拆分字符串作为查询条件的示例代码
2022/07/07 MySQL