LUPA首页 | 资讯 | 教程 | 下载 | 求职 | 方案 | 博客 | 交易 | 英文版
LUPA论坛


 
标题: 基于多文件的makefile文件制作:autotools工具
本帖已经被作者加入个人空间
zhull1052
开源主力军
Rank: 3Rank: 3



UID 73681
精华 0
积分 1556
帖子 128
LUPA币 1492 点
阅读权限 30
注册 2007-10-19
发表于 2008-4-14 10:57  资料 个人空间 短消息 
基于多文件的makefile文件制作:autotools工具

为什么要用autotools来制作makefile文件?
      众所周知,我们在编写一个简单的程序时,只要GCC编译器编译即可得到可执行文件,但是,做为一个工程项目,它包含的文件去远远不止单一的代码文件,大家可以试想一下,有一个上百个文件的代码构成的项目,如果其中只有一个或少数几个文件进行了修改,假如用gcc编译器编译,就不得不把这所有的文件重新编译一遍,因为编译器并不知道哪些文件是最近更新的,而只知道需要包含这些文件才能把源代码编译成可执行文件。由于上述原因会导致实现项目的工作效率很低。
      编译过程是分为编译、汇编、链接不同阶段的,其中编译阶段仅检查语法错误以及函数与变量的声明是否正确,在链接阶段则主要完成是函数链接和全局变量的链接。因此,那些没有改动的源代码根本不需要重新编译,而只要把它们重新链接进去就可以了。所以,Make工程管理器也就应运而生了。
      Make工程管理器:它能够根据文件时间自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件的内容来执行大量编译工作,用户只需要编写一次编译语句就可以了,即编写一个makefile文件,它大大提高了实际项目的工作效率。
但是,编写makefile文件需要懂它的一些编写规则,如结构、变量、规则等。手工编写makefile确实不是一件轻松的事,尤其对一个较大的项目而言。那么,有没有一种轻松的方法生成makefile而同时又能让用户享受make的优越性呢。
     答案是autotools系列工具。
Autotools的使用
     现在linux上的软件开发一般都用autotools来制作Makefile。
Autotools的使用流程:
autoscan-->aclocal-->autoconf-->autoheader-->automake
具体实例操作,点击以下链接下载:

http://www.lupaworld.com/batch.download.php?aid=10435
顶部
[广告] 推荐个超酷的web2.0相册
sanool
LUPA团队
Rank: 9Rank: 9Rank: 9
你好,可以打搅下吗?


杰出贡献奖   风雨同舟奖  
UID 43
精华 19
积分 14023
帖子 2484
LUPA币 12743 点
阅读权限 200
注册 2005-8-1
发表于 2008-4-14 14:47  资料 个人空间 短消息  QQ
新手可以用anjuta来自动完成以上工作




邮箱 sanool at gmail.com  
顶部
[广告] 推荐个超酷的web2.0相册
zhull1052
开源主力军
Rank: 3Rank: 3



UID 73681
精华 0
积分 1556
帖子 128
LUPA币 1492 点
阅读权限 30
注册 2007-10-19
发表于 2008-4-23 12:42  资料 个人空间 短消息 


QUOTE:
原帖由 sanool 于 2008-4-14 14:47 发表
新手可以用anjuta来自动完成以上工作

新手们,这个建议也是可以的,但是,喜欢在终端下敲敲命令的人,可以用我这个方法
顶部
[广告] 推荐个超酷的web2.0相册
 


当前时区 GMT+8, 现在时间是 2008-8-8 03:55
浙ICP备06002895号

    本论坛支付平台由支付宝提供
携手打造安全诚信的交易社区 Powered by Discuz! 5.0.0  © 2001-2006 Comsenz Inc.
Processed in 0.105651 second(s), 7 queries , Gzip enabled

清除 Cookies - 联系我们 - LUPA开源社区 - Archiver - WAP