automake的使用(详细1)

简介

automake是使用Makefile.am生成 Makefile.ins文件的工具,Makefile.am由一些变量定义组成,生成的Makefile.ins符合GNU makefile的规范

GNU makefile标准是一个特别复杂而且可改变的状态,automake的目标就是减少开发者在维护makefile的负担,将负担转移到automake工具的维护者身上

典型的automake输入文件就是一些变量定义,每个文件被处理后变成Makefile.in文件

automake工具也会对项目进行一些限制,比如必须是先用Autoconf工具

automake依赖perl去生成Makefile.in文件,但是automake生成的分发包是完全符合GNU标准的构建包格式,构建的时候,无需使用perl

如果你第一次接触Automake,或许你知道,它是AutoTool工具集的一部分,或者你已经知道了Makefile.in,Makefile.am,aclocal.m4等等,但是搞不清楚这些文件之间的关系,
本文将向你介绍他们的机制和强大之处,

2.1 介绍GNU构建系统

普遍认识的公理是开发一个新包,必须有一套构建系统,在unix世界,通常由make命令完成。在makefile文件中编写构建的规则。

当一个包需要被构建在不同的平台,Makefile文件通常需要进行调整,举个例子,编译器可能使用其他名字或者需要更多的选项,1991年,David J. MacKenzie厌倦了需要维护20个平台的makefile构建脚本,他写了一个小型的configure脚本,自动调整makefile文件,编译他的包就变成了 ./configure && make.今天这种方式已经成了GNU项目的标准,GNU编码标准解释了每个GNU包应该有一个configure脚本,同时makefile也要遵循一定的规范,最为结果,安装一个包的过程都变了,运行./configure && make && make install,我们叫这种构建系统,为GNU构建系统
Autoconf工具主要关注configure文件,Automake工具组要关注makefile文件,没有这两个工具,也可以创建一个完整的GNU构建项目,但是非常容易出错和繁琐,后面会将您展示

2.2 GNU构建系统使用案例

2.0.0 标准makefile目标

  • make all
    构建全部的程序,库,文档等,等价于make

  • make install
    安装需要安装的文件到系统目录

make install-strip
类似make install,删除调试符号,减少程序大小

make uninstall

make install 反向操作,需要在原构建目录下运行

make clean

删除make all的输出文件

make distclean

删除./configure生成的文件

make check

运行测试套件

make installcheck

检查已经安装的程序或者库

make dist

生成package-version.tar.gz 源文件包

 

如果需要完整的资料可以去这里“传送门” 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值