Peter.Y的技术博客

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

经常看到Linux下的开源软件中包含挺多文件,虽然知道是autoconf和automake生成的,不过一直没怎么仔细研究过。今天有空来研究一下看看。

1. 工具简介
autoconf用于生成配置文件的工具,输入文件是configure.ac(早期版本后缀是.in),输出文件是configure脚本
aclocal用于生成aclocal.m4
autoheader用于生成config.h.in,automake需要
automake用于生成Makefile,输入文件是Makefile.am

2. 基本步骤
1) 准备好源码,假定为test.cpp test.h
2) 新建Makefile.am,内容如下:

bin_PROGRAMS=test
test_SOURCES=test.cpp

3)autoscan
   a. 生成configure.scan
   b. mv configure.scan configure.ac :这是模板文件,需要手动修改
   c. 打开configure.ac,增加"AM_INIT_AUTOMAKE([test], 1.0)"

--至此需要修改的文件已经准备好了--

4)aclocal
   目录下增加aclocal.m4文件以及autom4te.cache目录
5)autoheader
   目录下增加config.h.in
6)autoconf
   目录下增加configure, configure.status
7)automake -a
   目录下增加Makefile.in。这一步有可能会提示缺少一些文件,通常都是一些跟开源软件相关的文件,比如AUTHORS, NEWS, ChangeLog之类的


--至此安装软件所需要的文件已经全部生成好了--

之后只要执行熟悉的configure/make/make install就可以编译安装了。

不过这样生成出来的脚本内容多余的内容很多,以后有时间再研究一下怎么去除吧。

posted on 2012-12-15 22:07  Peter.Y  阅读(269)  评论(0编辑  收藏  举报