首页 > 其他分享 >Autotools 工具

Autotools 工具

时间:2022-11-15 19:35:14浏览次数:73  
标签:文件 configure Makefile 构建 软件 工具 Autotools config

为了简化可移植构建的难度,早期有一套AutoTools的工具帮助程序员构建软件。Auto Tools是GNU程序的标准构建系统。

configure脚本是由软件开发者维护并发布的给用户使用的shell脚本。该脚本的作用是检测系统环境,最终目的是生成Make file和configure.h。
make通过读取Make file文件,开始构建软件。
make install可以将软件安装到默认或者指定的系统路径

 

 

  • 在上图中,开发者在分发源码包时,除了源代码中的头文件(.h)和程序源文件(.c),还有许多支持软件构建的文件和工具。
  • 最重要的就是Makefile.in和config.h。
  • configure脚本执行时,将为每一个.in文件处理成对应的非.in文件,即生成:Makefile,src/Makefile,config.h 。大部分情况下,只有Makefile和config.h。
  • Makefile用于被make程序识别并构建软件,而config.h中定义的宏,有助于软件通过预编译来改变自身代码,来适应目标平台某些特殊性。
    有些软件在configure阶段,还可以生成其他文件,这完全取决于软件本身。
configure

一般而言,configure主要检查当前目标平台的程序,库,头文件,函数等的兼容性。这些结果将作用于config.h和Makefile文件的生成,从而影响最终的编译。
用户可以通过configure配置参数,来定制需要包含或者不需要包含的组件,安装路径等。大概可以分为五组:

·  安装路径相关

·  程序名配置

·  跨平台编译

·  动静态库选项

·  程组件

configure在执行过程中,除了生成Makefile外,还会生成,但是不限于以下文件:

·config.log日志文件

·config.cache缓存文件。提高下一次configure的速度,-C指定

·config.status实际调用编译工具构建软件的shell脚本

如果软件通过libtool构建,还会生成libtool脚本。

 

Autotools包括了autoconf和automake等命令

autoreconf

autoreconf程序能够自动按照合理的顺序调用autoconf,automake,aclocal程序

 

 

 

 

 

参考资料:

1. https://www.jianshu.com/p/b3b0a090a01e

2.如何利用configure.ac和Makefile.am生成Makefile

 

标签:文件,configure,Makefile,构建,软件,工具,Autotools,config
From: https://www.cnblogs.com/guxuanqing/p/16893601.html

相关文章