• Autoconf解释


    主体如下

    一般用autoconf会生存configure.scan下面解释下里面部分含义

    AC_PREREQ([2.66])这个宏是用来检测autoconf的版本的。

    AC_INIT()是个初始化宏,括号中内容分别为:要生成的软件名称,版本号,bug报告邮箱。

    AM_INIT_AUTOMAKE(family,1.0)这个宏是新添加的,不过好像1.8的automake不用添加这个也可以,但是我没有添加的时候在后面make的时候会有“Makefile:15: *** 遗漏分隔符 。

    AC_CONFIG_SRCDIR([src/wife.c])这个宏是用来检测源码目录的有效性,srcdir就可以看出来,括号里边的文件不一定非得是wife.c,也可以改成其他的。

    AC_CONFIG_HEADERS([config.h])这个宏用来生成标准的config.h文件。

    接下来的内容就是众多的check了

    AC_PROG_CC这个是检测编译器的宏

    其他的就是执行aclocal,autoconf,autoheader

    编写Makefile.am

     上图我也不是很明白

    说几个简单的

    1) 标准安装路径

    默认安装路径为:$(prefix) = /usr/local,可以通过./configure --prefix=<new_path>的方法来覆盖。

    其它的预定义目录还包括:bindir = $(prefix)/bin, libdir = $(prefix)/lib, datadir = $(prefix)/share, sysconfdir = $(prefix)/etc等等。

    2) 定义一个新的安装路径

    比如test, 可定义testdir = $(prefix)/test, 然后test_DATA =test1 test2,则test1,test2会作为数据文件安装到$(prefix)/ /test目录下。

    AUTOMAKE_OPTIONS为设置automake的选项,三种软件等级:foreign、gnu和gnits

    编写完Makefile.am就可以使用automake --add-missing

    最后Makefile就over了。

  • 相关阅读:
    解析#pragma指令
    查看内核版本和发行版本

    unix 环境高级编成 apue.h ,apueerror.h的代码
    类string的构造函数、拷贝构造函数和析构函数 (转)
    归并排序
    C++ 中调用其他应用程序的方法
    [MySQL] MySQL的Grant命令
    static的作用
    白话经典算法系列之七 堆与堆排序 (转)
  • 原文地址:https://www.cnblogs.com/fuhaidasheng/p/2880057.html
Copyright © 2020-2023  润新知