http://www.laruence.com/2008/11/11/606.html

原文地址:http://hi.baidu.com/yzkuang/blog/item/557e4f24423d8136c9955908.html

  1. 1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。
  2. 2.aclocal (automake):根据已经安装的宏,用户定义宏和acinclude.m4文件中的宏将configure.ac文件所需要的宏集中定义到文件 aclocal.m4中。aclocal是一个perl 脚本程序,它的定义是:“aclocal - create aclocal.m4 by scanning configure.ac”
  3. user input files optional input process output files
  4. ================ ============== ======= ============
  5. acinclude.m4 - - - - -.
  6. V
  7. .-------,
  8. configure.ac ------------------------>|aclocal|
  9. {user macro files} ->| |------> aclocal.m4
  10. `-------'
  11. 3.autoheader(autoconf): 根据configure.ac中的某些宏,比如cpp宏定义,运行m4,声称config.h.in
  12. user input files optional input process output files
  13. ================ ============== ======= ============
  14. aclocal.m4 - - - - - - - .
  15. |
  16. V
  17. .----------,
  18. configure.ac ----------------------->|autoheader|----> autoconfig.h.in
  19. `----------'
  20. 4.automake: automake将Makefile.am中定义的结构建立Makefile.in,然后configure脚本将生成的Makefile.in文件转换为Makefile。如果在configure.ac中定义了一些特殊的宏,比如AC_PROG_LIBTOOL,它会调用libtoolize,否则它会自己产生config.guess和config.sub
  21. user input files optional input processes output files
  22. ================ ============== ========= ============
  23. .--------,
  24. | | - - -> COPYING
  25. | | - - -> INSTALL
  26. | |------> install-sh
  27. | |------> missing
  28. |automake|------> mkinstalldirs
  29. configure.ac ----------------------->| |
  30. Makefile.am ----------------------->| |------> Makefile.in
  31. | |------> stamp-h.in
  32. .---+ | - - -> config.guess
  33. | | | - - -> config.sub
  34. | `------+-'
  35. | | - - - -> config.guess
  36. |libtoolize| - - - -> config.sub
  37. | |--------> ltmain.sh
  38. | |--------> ltconfig
  39. `----------'
  40. 5.autoconf:将configure.ac中的宏展开,生成configure脚本。这个过程可能要用到aclocal.m4中定义的宏。
  41. user input files optional input processes output files
  42. ================ ============== ========= ============
  43. aclocal.m4 - - - - - -.
  44. V
  45. .--------,
  46. configure.ac ----------------------->|autoconf|------> configure ----->autoconfig.h,Makefile

图解aclocal、autoconf、automake、autoheader、configure的更多相关文章

  1. autoscan; aclocal; autoconf; automake --add-missing; ./configure; make

    1.autoscan 在源码目录下执行autoscan,生成configure.scan,重命名为configure.in或者configure.ac,然后编辑文件内容: ============== ...

  2. 自动生存Makefile教程 autoscan aclocal autoconf autoheader automake configure

    LZ没学过makefile的写法,只知道使用tab.于是乎发现了autotools系列工具 基本流程是:autoscan.aclocal.autoconf.autoheader.automake.co ...

  3. autoconf automake libtool

    这是一个 autoconf / automake 的 "Hello World"gztt.ll@gmail.com 主要步骤是- 准备工程目录结构和程序- autoscan 生成 ...

  4. Autoconf/Automake工具简介

    在linux下编程的时候,有时候工程项目很大,文件比较多,此时需要使用自动创建Makefile文件功能.也就是使用Autoconf/Automake工具自动生成Makefile,为编译程序带来了方便, ...

  5. autoconf / automake工具使用介绍

    本文转自:http://blog.csdn.net/gulansheng/article/details/42683809 一.简介 作为Linux下的程序开发人员,一定都遇到过Makefile,用m ...

  6. cmake与autoconf+automake

    cmake与autoconf+automakes是同类的编译工具,本人常用的是cmake. 这有一篇对比的文章,记录一下. cmake与autoconf+automake的对比

  7. [strongswan][autoconf][automake][cento] 在CentOS上编译strongswan git源码时遇到的autoconf问题

    编译strongswan的git源码问题 1. 概述 首先,我们想要通过源码编译strongswan.当满足以下条件时,通常你会遇见此问题: 源码时通过git clone的得来的,而不是官网下载的源码 ...

  8. 手动安装m4, autoconf, automake, libtool

    转自http://ruby-china.org/topics/2434 系列文章原载于自己的博客,TOPI.CO (http://topi.co) ,某天不小心就push错啦,懒得从头再来,上传到Ru ...

  9. 安装 Autoconf, Automake & Libtool

    今天在使用sudo apt-get install命令安装autoconf和automake时,出现了问题,说是不能sudo apt-get install安装这些软件似乎不是最新的.由此,我通过搜索 ...

随机推荐

  1. jquery.form.js上传文件ie弹出下载文件解决办法

    在ie下如果返回类型为jsonresult,ie老版本无法识别json类型,默认将会采用下载或者打开文件! 如果使用mvc的话.直接修改action返回类型为string即可,例如:return Js ...

  2. textarea 内容不可编辑 自是适应高度 只读相关属性配置

    不可编辑: <textarea disabled="disabled"></textarea> 如果仅仅用于禁止输入(只读,但有用),使用readonly属 ...

  3. centos7中安装wdcp管理系统(用于网站搭设)

    首先我们进入官网看下安装方法https://www.wdlinux.cn/wdcp/install.html 可以看到,实际上有两张安装方式,一种是源码进行安装,还有一种是RPM包安装,显然第二种安装 ...

  4. 洛谷——P2239 螺旋矩阵

    P2239 螺旋矩阵 题目描述 一个n行n列的螺旋矩阵可由如下方法生成: 从矩阵的左上角(第1行第1列)出发,初始时向右移动:如果前方是未曾经过的格子,则继续前进,否则右转:重复上述操作直至经过矩阵中 ...

  5. CSS3选择器、低版本解决方案及各浏览器私有前缀

    一.基本选择器 通配选择器:* 元素选择器:div.p… ID选择器:#id 类选择器:.className 群组选择器:选择器1,选择器2 主流浏览器全部支持 二.层次选择器 后代选择器: div ...

  6. 【BZOJ 1697】1697: [Usaco2007 Feb]Cow Sorting牛排序

    1697: [Usaco2007 Feb]Cow Sorting牛排序 Description 农夫JOHN准备把他的 N(1 <= N <= 10,000)头牛排队以便于行动.因为脾气大 ...

  7. Find K Pairs with Smallest Sums -- LeetCode

    You are given two integer arrays nums1 and nums2 sorted in ascending order and an integer k. Define ...

  8. luogu P1060 开心的金明

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”.今天 ...

  9. BZOJ 2705 [SDOI2012]Longge的问题(欧拉函数)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2705 [题目大意] 求出∑gcd(i,N)(1<=i<=N) [题解] $ ...

  10. (疯狂java)第一课

    (本文章只是为了好玩,没有别的意思,有理解错误之处,恳请提醒,谢谢) 环境变量的安装 记得很久之前大学学习java的时候还需要配置环境变量.系统变量,今天看了一下居然还是需要配置,想想啊,mac下面已 ...