关于automake等工具自动生成Makefile文件的一些技术摘要

autoscan && mv configure.scan configure.in(或者是configure.ac)
1.关于autoscan生成文件:configure.scan的修改补充。

         · AC_PREREQ 宏声明本文件要求的autoconf版本,本例使用的版本为2.59。
          · AC_INIT 宏用来定义软件的名称和版本等信息,”FULL-PACKAGE-NAME”为软件包名称,”VERSION”为软件版本号,”BUG-REPORT- ADDRESS”为BUG报告地址(一般为软件作者邮件地址)。
          · AC_CONFIG_SRCDIR  宏用来侦测所指定的源码文件是否存在,来确定源码目录的有效性。此处为当前目录下的hello.c。
          · AC_CONFIG_HEADER  宏用于生成config.h文件,以便autoheader使用。
          · AC_PROG_CC  用来指定编译器,如果不指定,选用默认gcc。
          · AC_OUTPUT  用来设定 configure 所要产生的文件,如果是makefile,configure会把它检查出来的结果带入makefile.in文件产生合适的 makefile。使用Automake时,还需要一些其他的参数,这些额外的宏用aclocal工具产生。
注:更加详细的内容可查看:

aclocal && autoconf && vi Makefile.am
2.关于需要自己编写的Makefile.am文件的补充。
   · AUTOMAKE_OPTIONS 为设置Automake的选项。由于GNU对自己发布的软件有严格的规范,比如必须附带许可证声明文件COPYING等,否则Automake执行时会报错。Automake提供了3种软件等级:foreign、gnu和gnits,供用户选择,默认等级为gnu。本例使需用foreign等级,它只检测必须的文件。
   · bin_PROGRAMS 定义要产生的执行文件名。如果要产生多个执行文件,每个文件名用空格隔开。
   · hello_SOURCES 定义”hello”这个执行程序所需要的原始文件。如果”hello”这个程序是由多个原始文件所产生的,则必须把它所用到的所有原始文件都列出来,并用空格隔开。例如:若目标体”hello”需要”hello.c”、”hello.h”两个依赖文件,则定义hello_SOURCES=hello.c hello.h。
autoheader && automake --add-missing

自此,通常来说一个可用的Makefile就可以生成了。之后就是常见的安装步骤:

./configure
make
make install

更多详细的automake工具介绍可观看该大神的文章:

https://blog.csdn.net/huyisu/article/details/25031567



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值