本文主要介绍如何用autotool工具构建一个自己的工程,每个工具具体是做什么用的,正常开发中应该在哪里增加相关配置文件等。
编写一个示例
main.c
#include "plib.h"
void main()
{
myprint();
}
plib/plib.h
void myprint();
plib/plib.c
#include <stdio.h>
void myprint()
{
printf("aaaaaaaa\n");
}
autoscan
autoscan会根据当前目录下的代码生成autoscan.log
和configure.scan
autoscan.log
记录了宏被调用的详细信息
configure.scan
根据目录下的源码生成的配置文件
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])
AC_CONFIG_SRCDIR([main.c])
AC_CONFIG_HEADERS([config.h])
# Checks for programs.
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
# Checks for typedefs, structures, and compiler characteristics.
# Checks for library functions.
AC_OUTPUT
aclocal
需要configure.ac
文件,生成aclocal.m4
文件
m4
autoconf
根据configure.in
文件生成configure
脚本
automake
根据Makefile.am
生成Makefile.in