如何下载、修改、构建和安装 Debian 源包?

sas*_*alm 39 package-management compiling

如果我想对 Debian 软件包的源代码进行细微更改,我该如何下载、增加软件包版本、构建(修改后的)源代码并将其安装到我的计算机上?

Jav*_*pez 45

基本上有两种方法可以做到,第一种是经典形式,您将获得源代码:

经典的

 $ apt-get source package
Run Code Online (Sandbox Code Playgroud)

然后你就可以修改它:

 $ cd package
 $ vim some_file
Run Code Online (Sandbox Code Playgroud)

重建它:

$ sudo apt-get build-dep package
$ dch -i (which will open your editor to edit the changefile, here's where you can increment the package version)

$ debuild -us -uc -b
Run Code Online (Sandbox Code Playgroud)

并安装它:

$ sudo dpkg -i ../package.deb
Run Code Online (Sandbox Code Playgroud)



新的 Ubuntu 方法

新方法(Ubuntu 方法)是使用 bzr 分支,您将使用以下代码获取代码:

$ bzr branch lp:ubuntu/package #which will download the latest ubuntu package (the precise one)

$ bzr branch lp:ubuntu/oneiric/package #to get the package in oneiric
Run Code Online (Sandbox Code Playgroud)

您还可以使用以下方法获取代码:

$ pull-lp-source package #lp-source is part of the ubuntu-dev-tools pkg
Run Code Online (Sandbox Code Playgroud)

pull-lp-source过去只lp-source在旧版本中被调用。

然后你就可以编辑它了:

$ cd package 
$ vim some_file
Run Code Online (Sandbox Code Playgroud)

重建它:

$ dch -i 
$ debcommit
$ bzr bd -- -b -us -uc
Run Code Online (Sandbox Code Playgroud)

并安装它:

$ sudo dpkg -i ../package.deb
Run Code Online (Sandbox Code Playgroud)

我建议您查看Ubuntu 打包指南以了解详细信息。

如果软件包依赖于其他人,您也可能会遇到问题

  • 你需要 `sudo apt-get install devscripts` 来获取 debuild 命令。 (3认同)