2009年2月26日星期四

linux下编译打包生成deb

配置基础开发环境GCC
刚装好的系统中已经有GCC了,但是这个GCC几乎什么文件都不能编译,因为缺少一些必须的头文件,所以要安装build-essential这个软件包:
sudo apt-get install build-essential

安装GTK/GNOME开发环境
安装GTK环境只要安装一个libgtk2.0-dev就可以了,而安装gnome开发环境的话,需要装gnome-core-devel,它包含GTK开发包。
但在一般情况下,我们需要有一个ide开发环境,需要帮助文件,于是我们安装
sudo apt-get install gnome-devel gnome-dev-doc

根据软件包的不同可能还存在对其他软件包的依赖,根据错误提示进行安装所需软件包
sudo apt-get install dpkg-dev dh-make debhelper fakeroot gnupg pbuilder

制作DEB软件包
解压后进入源码包目录,执行
./configure
make
sudo checkinstall -D make install
或(因为软件包的执行标准不同)
dpkg-buildpackage –rfakeroot

执行完毕后deb软件包就会出现在这个目录里面了。

附:
checkinstall是一个deb打包程序,安装:sudo apt-get install checkinstall

使用:一般需要编译的程序是/.configure;make;make install 三步
checkinstall就是在该makeinstall的时候使用,取代实际安装,而生成为deb包的。

在./configure ,make以后
checkinstall
然后会出现
The package documentation directory ./doc-pak does not exist.
Should I create a default set of package docs? [y]:
的提示,选n,自己输入deb包的描述,输入一个空行结束

然后会出现
0 - Maintainer: [ jarlyyn@Home ]
1 - Summary: [ Package created with checkinstall 1.6.0 ]
2 - Name: [ syncevolution ]
3 - Version: [ 0.4 ]
4 - Release: [ 1 ]
5 - License: [ GPL ]
6 - Group: [ checkinstall ]
7 - Architecture: [ i386 ]
8 - Source location: [ syncevolution-0.4 ]
9 - Alternate source location: [ ]
10 - Requires: [ ]

按需要选取相应数字编辑你需要改变的项目,当然,如果你什么都不需要改变也可以

然后输入回车,开始生成deb包。

没有评论: