ubuntu12.04使用autotools自动生成makefile

    Linux下编程时的Makefile是个令人头疼的问题,而且编译环境不同,需要不同的Makefile,这个不可能由用户来自己编写,好在我们有自动生成Makefile的工具autotools。。。但是百度上的很多方法其实并不完全适用与ubuntu系统,所以今天我就跟大家分享一下在ubuntu12.04下使用autotools自动生成Makefile的方法。。。


1、autotool是一个系列工具,首先用which命令确认是否安装了以下工具:

       aclocal        autoscan       autoconf        autoheader       automake

      如果没有安装,在终端下,使用下面的命令来分别安装:

~$ sudo apt-get install autoconf

2、进行到源文件的目录下。。执行autoscan

这时会在目录下新生成两个文件autoscan.log(日记文件,可以忽略)和configure.scan。。

使用vi编译器进入configure.scan对其进行修改。。。

-----------------------------configure.in文件开始-----------------------------------------
                                              -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.64])
AC_INIT(first1.0XXXX@XXX.com #修改红色的部分,邮箱可以不加。原先为
AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])


AC_CONFIG_SRCDIR([first.c])     # first.c是你的c文件名称,,可以自行改正。。
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE(first,1.0)
  #添加上这一行 

# 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(Makefile)          #添加上红色的部份


3,新建文件Makefile.am,内容如下:
AUTOMAKE_OPTIONS=foreign
bin_PROGRAMS=first
first_SOURCES=first.c     #如果有头文件的话,,将其名称写在c文件后面
保存。


4,运行命令aclocal,
~/cproject$ aclocal
命令成功之后,在目录下会产生aclocal.m4和autom4te.cache两个文件。
5,运行命令autoheader
~/cproject$ autoheader
命令成功之后,会在目录下产生config.h.in这个新文件。
6,运行命令autoconf
~/cproject$ autoconf
命令成功之后,会在目录下产生configure这个新文件。
7,运行命令automake --add-missing
~/cproject$ automake --add-missing
输出结果为:
configure.in:8: installing `./install-sh'
configure.in:8: installing `./missing'
Makefile.am: installing `./depcomp'
命令成功之后,会在目录下产生depcomp,install-sh和missing这三个新文件和执行下一步的Makefile.in文件。
8,运行命令
~/cproject$ ./configure
就可以自动生成Makefile。
9,make一下看看,是不是已经产生可执行文件first了?


呵呵,,谢谢观看。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值