如何使用'apt'获取源代码并进行单独编译

我想获取一个项目的源代码,并以与apt相同的方式构建它。例如,我希望获得可工作的源代码,并能够在源代码上运行'make'或类似的命令。
我该如何做到这一点?
具体来说,我想获取这个源代码'icedtea-6-jre-jamvm'。
3个回答

这个例子中,我会使用icedtea-6-jre-jamvm作为你想重新构建的包。

首先安装所有依赖和构建必要项:

sudo apt-get build-dep icedtea-6-jre-jamvm
sudo apt-get install build-essential

然后获取源代码:
apt-get source icedtea-6-jre-jamvm

然后在openjdk目录中切换到cd,并构建deb包,这里的-us和-uc选项会跳过GPG检查,如果你只是重新构建自己的包的话。
cd openjdk-6-6b24-1.11.5
dpkg-buildpackage -us -uc

然后返回上一级目录,你应该会有.deb文件。
来源:

这真是太好了!开始为一个自由软件项目做贡献的一个大障碍就是“让它编译起来”,看到这一过程自动化真是太棒了。 不过,如果我们能够只生成二进制文件而不生成deb包,对于经常进行编辑和编译的开发人员来说会更方便一些... 你知道有什么方法可以实现这个吗? - josinalvo
非常好的指示,非常感谢!不过,在获取源代码之前,最好先进入一个“工作”目录中 :-) - desgua

只需使用每个Debian软件包中提供的debian/rules脚本来编译软件包即可。
sudo apt-get build-dep <package>
apt-get source <package>
cd <package>_<version>
./debian/rules binary

这只是做配置和编译的部分。

你可以使用以下内容:
apt-get source <package>

你需要确保安装构建依赖项。
sudo apt-get build-dep <package> 

更多信息请运行:

man apt-get

备选方案:首先,您需要知道包的位置。然后使用以下命令下载tar文件:
sudo wget <url>

您可以解压缩并使用make进行编译。
如果您不确定特定的命令,请查看文件夹内部,应该有一个README文件或INSTALL文件,它会告诉您适当的命令。

那是从主机站点获取的。有没有一种方法可以使用 'apt' 来完成,完全不需要实际编译。例如,我可以执行 'apt get source',然后导航到该目录,然后执行 'make'。 - Berlin Brown
抱歉,问题刚刚更新了! - meda