Creative Commons License
本Blog采用 知识共享署名-非商业性使用-禁止演绎 3.0 Unported许可协议 进行许可。 —— Fox <游戏人生>

游戏人生

游戏人生 != ( 人生 == 游戏 )
站点迁移至:http://www.yulefox.com。请订阅本博的朋友将RSS修改为http://feeds.feedburner.com/yulefox
posts - 62, comments - 508, trackbacks - 0, articles - 7

automake使用小记

Posted on 2010-01-07 01:32 Fox 阅读(3974) 评论(4)  编辑 收藏 引用 所属分类: T技术碎语

本文同步自游戏人生

最近有点忙,本来要用autoconf+automake把自己的代码梳理一下的,因为工作停了近两周。

本想看看有什么工具可以自动生成Makefile.am,答案是:Automake不支持通配符,而且还口口声声,振振有词。既然说的这么言词凿凿,情深意切,我想我也没有必要用shell生成Makefile.am了。

用着用着,我有点怀疑人生了:不知道什么时候需要用autoconf和automake。如果我只是平时自己写一些toy codes的话,感觉用autoconf和automake有点大炮打蚊子的感觉,而且每次新加代码或者是移除代码、甚至是更改目录,都要重新执行 autoconf、automake(不知道我说的对与不对)。对于一个大型项目,执行一次configure和make是很痛苦的一件事,make的中 间目标文件或者库文件、执行文件倒是不一定非得完全rebuild,configure的配置检查呢?是不是也有类似机制?反正我在用ogre或者 cegui的时候,每次执行./configure是重新配置了的。

实际在开源项目里面也不可能维护两套makefile吧。

看了一下googletest的配置,倒是清爽的很,最大的特点是只有一个Makefile.am,这样在一个项目里面只需要维护一个Makefile.am就够了。

cegui比较常规,每个子目录都会维护一个Makefile.am。

需要特别注意的是ogre从1.7.0开始已经开始使用cmake了……

请听题:管理中小型项目,你倾向于下面哪个工具?

o make:钻木取火,玩的就是个技术,编译代码,只用装B的,不用牛B的,你要是用什么cmake,你都不好意思跟别人打招呼,这么经典的东西,精通需要多久?要我说怎么着也得个把俩月吧,个把俩月?那是入门,至少半年,就这还得有Feldman的悟性,不舍昼夜;

o autoconf+automake:既有群众基础,又有技术含量,你是那样拉轰的男人,不管在什么地方,就好像漆黑中的萤火虫一样,那样的鲜明,那样的 出众。你那忧郁的眼神,稀嘘的胡喳子,神乎其技的指法;既可以耻笑原始人的生产力低下,还可以鄙视现代人的不学无术。

o cmake:在MSVCers面前抬不起头,在UNIXers面前似乎更抬不起头;而cmake对WINDOWS和UNIX平台的完美支持,足以让所有的 MSVCers和UNIXer在你面前抬不起头,你是公鸡中的战斗机。所以你还是可以趾高气昂的丢下一句:走NB的路,让SB说去吧。


Feedback

# re: automake使用小记[未登录]  回复  更多评论   

2010-01-07 11:20 by tiger
CMake是目前最强大、速度最快的build system,不知道楼主“抬不起头”从何说起。
KDE使用CMake,Qt计划放弃QMake的开发,很有可能切换到CMake。

# re: automake使用小记[未登录]  回复  更多评论   

2010-01-07 13:04 by pass86
bjam呢?
test的代码very easy.

# re: automake使用小记  回复  更多评论   

2010-01-07 14:08 by tp
先mark一下,在看!

# re: automake使用小记  回复  更多评论   

2010-01-08 17:27 by 试试其他的
scons, bakefile 呢?

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理