带有 MacPorts 的 Python 2.5 和 2.6

带有 MacPorts 的 Python 2.5 和 2.6

我已经使用 Macports 在系统上安装了 python25 和 python26。现在我想卸载 python25 和所有没有实际依赖项的 py25-* 包。不幸的是,当我这样做时

port dependents python25

我得到了一长串依赖项列表,其中包括 mercurial 和 bzr 之类的东西。当我这样做时

port info mercurial

我看到 mercurial 依赖于 python26。我知道我可以通过以下方式强制删除 python25:

port uninstall -f python25

但我想知道是否有办法让 Macports 知道 mercurial 不再依赖于 python25。

答案1

MacPorts 目前不会升级已安装软件包的依赖关系树。也就是说,如果 mercurial 从您安装时对 python25 的依赖转变为对 python26 的依赖,它将继续认为它需要 python25,直到您卸载它。简单地升级软件包无法修复此行为。

尝试卸载 mercurial 然后重新安装它。

答案2

一般来说,没有办法让 macports 知道端口 A 不再依赖于端口 B。但对于这种情况,mercurial 实际上似乎可以很好地与 python25 和 python26 配合使用。(尽管端口配置文件只能选择一个依赖项。)因此,简单地用 python26 替换 python25 不会破坏 mercurial。

相关内容