为什么 apt 找不到任何包的源代码?

为什么 apt 找不到任何包的源代码?

我正在尝试下载某些软件包(例如 rhythmbox)的源代码,用于学习目的。我想通过apt-get,使用apt-get source命令来完成此操作。

由于某种原因,apt-get似乎找不到任何包。我尝试了几个包,但总是从 apt-get 得到这样的输出:

$ apt-get source rhythmbox
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to find a source package for rhythmbox

我已经搜索答案很长时间了,但找不到遇到同样问题的人。apt-get安装和更新都运行良好,所以apt-get我认为运行良好。在搜索过程中,我还了解到我必须在软件源中启用“源代码存储库”,因此也启用了该存储库。

我知道(可能只针对某些包,不确定)源包也可以从bzrLaunchpad 下载,但我想知道为什么这种方法不起作用。

答案1

打开软件中心并选择编辑 -> 软件源。您使用哪个服务器?我使用的是“服务器和美国”,刚刚下载了 rhythmbox 的源代码。我使用的是 Precise。

答案2

apt-get source rhythmbox仅当您打开了源存储库、更新了软件包列表并且您的源中确实有该存储库时才有效。

例如,如果您安装了普通的 Ubuntu 安装并且没有添加任何 apt 存储库。那么您所需要做的就是确保“源代码”已选中。如果您添加了额外的存储库,则需要为每个存储库设置两个条目。一个用于“main”(通常),一个用于“source”。

如果您还没有,请apt-get update再次运行以获取所有新的存储库。

现在 apt-get source 会为您安装的确切软件包安装源。这意味着如果您从 some-odd-ppa(主)安装了 deb,则源需要位于 some-odd-ppa(源)中。从 some-odd-ppa 安装的软件包不会从其他存储库中提取源,因为它们不是同一版本。

我已经检查过,rhythmbox 可通过源存储库获得。您只是没有在 apt 存储库中包含正确的源存储库,或者您尚未运行 apt-get update。

相关内容