找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 4194|回复: 2

[原]linux下的C语言开发(自动编译工具)

[复制链接]
发表于 2012-1-20 11:27:55 | 显示全部楼层 |阅读模式
【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】

    在Linux下面,编写makefile是一件辛苦的事情。因此,为了减轻程序员编写makefile的负担,人们发明了autoconf和automake这两个工具,可以很好地帮我们解决这个问题。
    我们可以通过一个简单的示例来说明如何编写。

(1)首先,编写源文件hello.c。
  1. #include <stdio.h>
  2. int main(int argc, char** argv[])
  3. {
  4.     printf("hello, world!\n");
  5.     return 1;
  6. }
复制代码
(2)接下来,我们需要创建一个Makefile.am,同时编写上脚本。

SUBDIRS=

bin_PROGRAMS=hello
hello_SOURCES=hello.c  

(3)直接输入autoscan,生成文件configure.scan,再改名为configure.in。

修改脚本AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
为AC_INIT(hello, 1.0, feixiaoxing@163.com)

同时,在AC_CONFIG_HEADER([config.h])后面添加
AC_INIT_AUTOMAKE(hello, 0.1)

(4)依次输入aclocal命令、autoheader命令

(5)创建4个文件,分别为README、NEWS、AUTHORS和ChangeLog

(6)依次输入automake -a、autoconf命令

(7)输入./configure,生成最终的Makefile

(8)如果需要编译,输入make;如果需要安装, 输入make install;如果发布软件包,输入make dist



作者:feixiaoxing 发表于2012-1-19 21:52:52 原文链接

发表于 2012-1-20 11:36:03 | 显示全部楼层
貌似比这个要复杂一些;
尤其是在涉及到多个库编译的时候,中文资料不多;也就是在去年的这个时候,由于公司放假,所以才深入的学习了下个autotools工具,总算有了比较深入的了解;并且已经应用到了我们的软件中了;
发表于 2012-1-20 11:36:38 | 显示全部楼层
不过如果makefile模板写好了也满足一般的应用了,但给人的感觉就是不如autotools专业;
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-12-22 18:10 , Processed in 0.019414 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表