当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言:
 

 

 ·java编程规范    »显示摘要«
    摘要:定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性) package 的命名 package 的名字应该都是由一个小写单词组成。 class 的命名 class 的名字必须由大写字母开头而其他字母都小写的单词组成 class 变量的命名 变量的名字必须用一个小写字母开头。后面的单词用大写字母开头。 static final 变量的命名 st......
 ·asp对base64编码解码程序    »显示摘要«
    摘要:针对邮件退信,内容进行解码!网上收集,具体出处不详! <form name="form1" method="post" action=""> <table width="95%" border="0" align="center" cellpadding="0" cellspacing="0......


使用autotools进行项目管理
mark zhong´s homgpage

主页 【相关文章:如何把应用程序程序和ORACLE客户端一

? 【扩展阅读:配置整合Win+Apache+PHP+M

【扩展信息:多媒体信号处理学习随笔

其它语言:

英语

文章:

autotools的使用

...更多

书籍资源:

autotools

...更多

给我发email

?

?       使用autotools配置管理跨平台项目 ?

一、简介

 1.程序的跨平台

???? 开发能够运行在多种不同平台上的软件是一项需要很多技巧与努力的工作。必须有多种平台的相关知识。   

  仅仅创建能够在多种不同的*nix系统上运行的程序也要做大量的工作。首先,代码本身必须是可移植的,可移植代码很少对运行时的硬件以及可以使用的软件库等有所假设。

  开发者必须对不同系统的编译与运行环境,甚至是硬件系统结构有足够多的了解。gnu/linux中普遍使用的gnu软件,虽然也存在于许多其他的操作系统与硬件平台,但是这不是操作系统必须的。此外也可能存在以下情况:

编译器可能不遵循iso标准 函数库可能缺少关键的特性 操作系统的api可能有所不同 文件系统所做的约定有所不同     

  因此,在linux下的开发人员不得不编写一个通用的makefile,并且告诉用户如何编辑这个makefile文件以适应本机环境。     

  一般开源项目与gnu的项目的源代码都是通过configure命令生成makefile来进行编译的。如果你想使你的 项目表现的更专业一点,想省去写makefile的麻烦,如果你想管理好有一堆源代码的项目。那么这篇文章非常 适合你。

 2.autotools的构成与历史

   其实gnu/autotools是由一组命令行工具构成,它们包括:autoconf,automake,libtool等。它们最早只是 一组unix下的shell script。更详细的信息,可以访问gnu manual。

 3.它们是怎样工作的

   下图是整个autotools的工作流程及架构图:

图中文字颜色为绿色的文件是linux下的可执行文件。

   以下详细的为大家介绍一下该流程。makefile是最终文档,在发布源代码包时并不存在,一般是由使用者在自己的平台上生成。要完成该工作,首先要准备好configure.in,makefile.am, aclocal.m4,如有需要可准备好config.h.in。configure.in可以手动创建,也可以由autoscan命令生成的模板文件configure.scan重命名得到,autoscan只需在源代码树根目录下运行一次既可。aclocal.m4由aclocal程序生成。当准备好configure.in与aclocal.m4时既可运行autoconf以生成configure可执行文件。准备好makefile.am文件后,既可运行automake生成makefile.in文件,最后在编译以前运行一次configure,检查系统并生成makefile。然后就是make,make install了:),下面我们将以一个c++源程序为例做为这个流程的一个实践。

二、实战与分析

1.实战

hello.cpp

#include


...   下一页
 ·windows照相机    »显示摘要«
    摘要:最近写的图象捕捉软件,天空软件上有下载 http://www.skycn.com/soft/17777.html ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE