使用ubuntu打包一新软件

1. 检查软件

检查软件是否能正常编译和运行

1.1 下载软件GNU Hello

$ wget -O hello-2.10.tar.gz "http://ftp.gnu.org/gnu/hello/hello-2.10.tar.gz"

1.2 解压

$ tar xf hello-2.10.tar.gz
$ cd hello-2.10

1.3 生成Makefile

这将检查所需的构建依赖项。因为 hello 是一个简单的例子,所以 build-essential 应该提供我们需要的一切。对于更复杂的程序,如果您没有所需的库和开发文件,该命令将失败。安装所需的包并重复直到命令成功运行。

$ sudo apt install -y build-essential

此应用程序使用 autoconf 构建系统,因此我们要运行 ./configure 以准备编译。

$ ./configure

1.4 编译

$ make

1.5 安装和运行程序

$ sudo make install
$ hello

2. 开始打包

2.1 生成debian目录

bzr-builddeb 包含一个插件,用于从模板创建新包。该插件是 dh_make 命令的包装器。提供包名称、版本号和上游 tarball 路径的以运行该命令:

$ sudo apt-get install dh-make bzr-builddeb
$ cd ..
$ bzr dh-make hello 2.10 hello-2.10.tar.gz

当它询问包的类型时,输入 s 表示单二进制文件。这会将代码导入一个分支并添加 debian/ Packaging 目录。看看内容。它添加的大多数文件仅适用于专业包(例如 Emacs 模块),因此您可以从删除可选示例文件开始:

$ cd hello/debian
$ rm *ex *EX

README.source 和 README.Debian 仅在您的软件包具有任何非标准功能时才需要,我们不需要,因此您可以删除它们。

2.2 最后将代码提交到您的打包分支

如果添加了config、postinst之类的文件,也需要进行添加。不然生成的包不会包含这些脚本

$ bzr add debian/source/format
$ bzr commit -m "Initial commit of Debian packaging."

3. 构建包

-us -uc 告诉它不需要 GPG 对包进行签名。使用 -nc “no clean” 无需从头开始构建

bzr builddeb -- -nc -us -uc

参考

db_input常用方法杂记
【全网独家】手把手教你制作一个Ubuntu Deb 安装包
https://www.debian.org/doc/packaging-manuals/debconf_specification.html
https://www.halolinux.us/debian-system-concepts/using-debconf.html
http://www.fifi.org/doc/debconf-doc/tutorial.html
https://books.google.com.hk/books?id=CLC36PmPVtAC
https://packaging.ubuntu.com/html/packaging-new-software.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值