在Linux-like平台上编写程序,无论是应用程序还是驱动代码,Makefile是一个无法避开的问题。虽然不是难题,但是也必须每次都敲进去了吧。
有自动生成的工具集,可以加快开发进度哦 more effective,fewer bugs
整个过程分别执行了以下命令
1、 autoscan 生成configure.scan. 由此获得configure.ac文件
2、 aclocal 生成aclocal.m4文件
3、 autoconf 生成configure文件
4、 autoheader生成configure.h.in文件
5、 创建Makefile.am
6、 执行automake生成Makfile.in文件
7、 执行Configure生成Makefile
一、Autoscan工具
扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形
一、aclocal 工具
根据已经安装的宏,用户定义宏和acinclude.m4文件中的宏将configure.ac文件所需要的宏集中定义到文件aclocal.m4中。aclocal是一个perl 脚本程序,它的定义是:“aclocal- create aclocal.m4 by scanning configure.ac”
二、autoconf工具
将configure.ac中的宏展开,生成configure脚本。这个过程可能要用到aclocal.m4中定义的宏。
三、autoheader工具
根据configure.ac中的某些宏,比如cpp宏定义,利用aclocal.m4,生成config.h.in文件。
四、automake工具
将Makefile.am中定义的结构建立Makefile.in,然后configure脚本将生成的Makefile.in文件转换为Makefile。如果在configure.ac中定义了一些特殊的宏,比如AC_PROG_LIBTOOL,它会调用libtoolize,否则它会自己产生config.guess和config.sub
附件是一个完整的测试记录