使用automake来写makefile

将设现在的文件目录project是这样的:
                main.c   src   inc
 
src中放入所有的.c文件:add.c 、hello.c。
inc中放入所有的.h文件:add.h 、hello.h。

使用automake来写makefile的流程如下:
 

 

1、写makefile.am
            有三个地方需要写makefile.am:
           1)、当前文件(project)下;
                    
    AUTOMAKE_OPTIONS = foreign
    SUBDIRS = src inc                      //子目录
     ROOTDIR = $(shell /bin/pwd)      //获得当前目录
     INCLUDES = -I$(ROOTDIR)/inc     //头文件的地址

     export INCLUDES                        //其他文件也可用这个环境变量
     bin_PROGRAMS = cyh_run          //要产生的可执行文件名
     cyh_run_SOURCES = main.c        //用来执行的源文件
     cyh_run_LDADD = $(ROOTDIR)/src/libaddhello.a     //增加链接库
                    
               2)、src目录
                    
	noinst_LIBRARIES = libaddhello.a          
      libaddhello_a_SOURCES = add.c hello.c
          
          3)、inc目录下
                    
	EXTRA_DIST = add.h hello.h          //额外要打包的文件



2、输入命令:autoscan
             执行上述命令后,会生产一个configure.scan文件,
           输入命令:mv configure.scan  configure.in  将其转换为configure.in
           在将 configure.in内容修改为:
 
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.


AC_PREREQ(2.63)
AC_INIT(cyh_run, 1.0, 991698424@qq.com)    ----修改
AM_INIT_AUTOMAKE()           -----新增
AC_CONFIG_SRCDIR([main.c])
#AC_CONFIG_HEADERS([config.h])       ----修改


# Checks for programs.
AC_PROG_CC


# Checks for libraries.
AC_PROG_RANLIB                 -----新增


# Checks for header files.


# Checks for typedefs, structures, and compiler characteristics.


# Checks for library functions.


AC_CONFIG_FILES([Makefile
                 inc/Makefile
                 src/Makefile])
AC_OUTPUT


3、输入命令:aclocal
4、输入命令:autoconf
5、输入命令:automake --add-missing
6、输入命令:./configure
7、输入命令:make

8、执行./cyh_run,得到以下结果:

Hello, I'am cyh
1 + 5 = 6





--------------------------------------------------2012年9月29日1:03:10



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值