debian打包工具

经过一个星期的调研,对Debian源码包和二进制包的一般结构了解的基础上,对源码文件进行了打包。

这里总结一下打包的工具:

debhelper

debhelper最初是由Joey Hess写的一套程序用于帮助Debian packager 编写rules files。Rules files 是一个makefile文件,包含建立和创建Debian包的指令。

 

dh_make 

dh_make与debhelper是相关的,但不是debhelper的一部分,dh_make复制所有用于建立debian包的模版到一个source directory中,这些模版是根据用户提供的信息和对源代码的粗略检查而自动定制的。运行完dh_make之后,开发者还要对大部分模板文件进行修改才能建立一个deb包。

 

CDBS

CDBS是Common Debian Build System的简写,用于创建Debian packages。CDBS包含很多makefile片段,这些片段可以直接被放在rules files中。

 

rules files

在创建debian包的时候,rules files是必须使用的。rules files本质上是一个makefile 文件,这个makefile文件包含创建一个debian package的rules。rules files主要用于完成诸如,编译软件,安装临时目录,通过临时安装的软件来建立debian package,建立完毕后清空临时文件等。当然,这样有大量的代码需要去完成,但是大多数代码将被复制在rules files中。即使使用了debhelper,这个过程依然无法避免。这种做法也会降低rules files的可读性并使他们难于维护。

 

dh 

参考《Not your Grandpa’s Debhelper》by Joey Hess

#!/usr/bin/make -f

build:

dh build

clean:

dh clean

binary-arch:

dh binary-arch

binary-indep:

dh binary-indep

binary:

dh binary

 

这些makefile片段可以写成

#!/usr/bin/make -f

%:

dh $@

 

现在问题是dh到底做了什么呢?

dh是debhelper的命令序列,是debhelper的关键部分,它会按照debian/rules文件(即上面提到的rules files)中的目标(这些目标包括”build”, ”clean”, ”install”, ”binary-arch”, ”binary-indep”,”binary”等,但用dh的话,是dh_加上目标名,作为dh的target)进行执行。

 

在dh开头的命令集中,有一类是dh_auto_*的命令:

dh_auto_configure → ./configure –prefix=/usr

dh_auto_build → make

dh_auto_test → make test || check

dh_auto_install → make install

du_auto_clean → make distclean || clean

 

在通常情况下,dh_auto的工作是这样的:

./configure –prefix=/usr

make

build:

dh build

 

而在非正常情况下,可能需要你对个别目标进行修改,你可以在命令前加override_对其进行覆盖,例如你需要对dh_auto_build进行修改:

修改前

dh_auto_build:

make

修改后

override_dh_auto_build:

make (此处加上你要添加的选项)

 

我在打包的过程中,主要使用了dh_make和并修改了建包过程中调用到的rules文件,其他必要的文件比如control、copyright、changelog以及一些可选的配置文件{post|pre}{inst|rm}等这里并未涉及,但在dh_make之后,都会生产相应的初始化文件,用户可以根据自己对包的需要进行修改,这里不在详述

阅读更多
个人分类: linux学习
上一篇deb包 安装和删除
下一篇debian源目录结构及debian包结构
想对作者说点什么? 我来说一句

java程序打包工具

2008年10月12日 5.42MB 下载

文件打包工具

2011年10月29日 1.61MB 下载

Debian学习笔记

2009年08月19日 40KB 下载

ASP 不错的打包工具

2010年08月26日 33KB 下载

正则表达式超强打包工具

2011年05月27日 1.25MB 下载

简单打包工具的资源

2018年04月11日 45.51MB 下载

网站打包工具 打包工具

2010年03月02日 54KB 下载

没有更多推荐了,返回首页

关闭
关闭