China Open source community
站内导航:

 
 
 
当前位置: 首页 >> 程序设计 >> 用autotools制作Makefile 和configure文件
 

用autotools制作Makefile 和configure文件

作者:      来源:zz     发表时间:2006-08-21     浏览次数:      字号:    

制作一个最简单的helloworld程序:

现有目录test

mkdir src 建立src目录存放 源代码
在src下。
编辑hello.c文件
[CODE]
#include <stdio.h>

int main()
{
        printf("hello world\n");
        return 0;
}
[/CODE]
在src目录下建立Makefile.am文件 (src/Makefile.am)
[CODE]
AUTOMAKE_OPTIONS=foreign
bin_PROGRAMS = hello
hello_SOURCES = hello.c
hello_LDADD = -lpthread (只是测试,实际不需要连接该库)
[/CODE]
保存退出

退到test目录 

编辑Makefile.am文件 (Makefile.am)

SUBDIRS = src

退出保存

然后
执行 
autoscan
生成configure.scan文件

按此编辑此文件
[CODE]
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ(2.59)
AC_INIT(hello,1.0, [miaoquan@nou.com.cn])
AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([src/hello.c])
AC_CONFIG_HEADER([config.h])

# Checks for programs.
AC_PROG_CC

# Checks for libraries.
# FIXME: Replace `main' with a function in `-lpthread':
AC_CHECK_LIB([pthread], [main])

# Checks for header files.

# Checks for typedefs, structures, and compiler characteristics.

# Checks for library functions.

#AC_CONFIG_FILES([Makefile
#                 src/Makefile])
AC_OUTPUT(Makefile src/Makefile)
[/CODE]

退出保存
将此文件更名 mv configure.scan configure.in
然后执行
touch NEWS README AUTHORS ChangeLog

然后执行
autoreconf -fvi

至此生成configure文件
执行configure文件

生成Makefile文件

make 
make install
make uninstall
make dist 
试验一下吧。

编辑 webmaster

 
 
 
评论
 
 
发表
 
姓名: QQ:
性别: MSN:
E-mail: 主页:
评分: 1 2 3 4 5
评论内容:
验证码:
  
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  •  
    中国源码网 - WWW.YUANMA.ORG - 中国开放源代码社区