首先,介绍一下背景:
我有一台装有 Unity 的 Ubuntu 13.10 64 位机器,我用它来开发。因此,我手动更新了几个软件包,甚至从源代码安装/编译了一些软件包(例如 python3 - 3.4.0)。
现在,当我尝试升级到 14.04 时,我收到错误“无法计算升级”。从我在网上读到的内容来看,这是每台机器上的一个特定问题,没有“神奇的解决方案”。所以我开始阅读/var/log/dist-upgrade/apt.log
,看看哪些软件包坏了,并尝试修复它们。
问题是:我该如何解读这句话?
Broken python3-dbus:amd64 Depends on python3 [ amd64 ] < 3.3.2-14ubuntu1 -> 3.4.0-0ubuntu2 > ( python ) (< 3.4)
这是否意味着我已将 3.3.2.14 更新至 3.4.0,但其预期版本低于 (<) 3.4?
还是相反?
顺便说一句,我已经重新安装了python3,dpkg -l
显示 3.3.2-14,但 python3 二进制文件显示版本 3.4.0
谢谢。
答案1
至于解释,该行的意思是该包python3-dbus:amd64
(无论设置为什么版本,Saucy 的还是 Trusty 的)依赖于python3
,其版本必须是< 3.4
。
但是,这对我来说没有意义,因为python3-dbus
Trusty 需要python3
,>= 3.4~
所以我假设该约束来自您正在运行的当前 Ubuntu 版本(可能是 Saucy)。
另请注意,由于您python3
从源代码进行编译并且尚未通过 dpkg/apt 安装它,也没有使用 PPA,因此升级管理器无法识别或看到它,并且dpkg -l
会将其报告为您从 repos 安装的版本。