源文件目录结构:
项目顶层目录名为helloworld,源码放在src目录下,源码如下:
src/main.c
#include <stdio.h>
#include <config.h>
int main(void)
{
puts("Hello World!");
puts("This is " PACKAGE_STRING ".");
return 0;
}
生成步骤:
我们需要手工编写configure.ac Makefile.am 和src/Makefile.am,然后执行autoreconf命令,可生成configure,Makefile.in src/Makefile.in和config.h.in,再执行./configure,即可自动生成Makefile。
configure.ac:
AC_INIT([amhello], [1.0], [[email protected]])
AM_INIT_AUTOMAKE([foreign -Wall -Werror])
AC_PROG_CC
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_FILES([Makefile src/Makefile])
AC_OUTPUT
Makefile.am:
SUBDIRS = src
src/Makefile.am:
bin_PROGRAMS = hello
hello_SOURCES = main.c
生成configure文件:
#autoreconf --install
#./configure
#make
#make distcheck