用 Autotools 生成 Makefile 文件

Autotools 是一个工具集,可以自动生成 Makefile 文件。Ubuntu 如果没有安装 Autotools ,需要执行 sudo apt-get install autoconf automake 进行安装,其他发行版类似。

在体验 Autotools 之前先创建一个简单的 helloworld 程序:

//helloworld.c
#include 
#include 
int main(void)
{
    double sec;
    struct timeval tv;

    gettimeofday(&tv, NULL);
    sec = tv.tv_sec;
    sec += tv.tv_usec/1000000.0;
    printf ("hello word!\nsec = %e\n", sec);
    return 0;
}

接下来是用 Autotools 为一个简单的程序 helloworld.c 生成 Makefile 文件的过程:

1. 用 autoscan 生成 configure.scan 文件:

进入 helloworld.c 所在的文件夹,执行:

autoscan

这样会得到 configure.scan 文件,这个文件可以修改为 configure.in 。而 configure.in 是 Autoconf 必须的东西,里面包含了一些宏的调用,可以测试系统里存在的和可以使用的包。 Read more