我需要安装python-twisted,所以…
$ sudo aptitude install python-twisted [[...]] The following packages have unmet dependencies: python-twisted-mail: Depends: python-twisted-core (>= 10.1) but 10.0.0-3 is to be installed. python-twisted-news: Depends: python-twisted-core (>= 10.1) but 10.0.0-3 is to be installed. python-twisted-words: Depends: python-twisted-core (>= 10.1) but 10.0.0-3 is to be installed. python-twisted-names: Depends: python-twisted-core (>= 10.1) but 10.0.0-3 is to be installed. The following actions will resolve these dependencies: [[...]]
哦。 所以它不会安装python,因为它取决于…嘿,等一下…让我们来看看… http://packages.debian.org/sid/python-twisted-core说,最新版本是10.1.0-1 …
$ sudo aptitude update [[...]] $ aptitude show python-twisted-core Package: python-twisted-core New: yes State: not installed Version: 10.0.0-3 Priority: optional [[...]] $ apt-cache policy python-twisted-core python-twisted-core: Installed: (none) Candidate: 10.0.0-3 Version table: 10.0.0-3 0 500 http://ftp.us.debian.org unstable/main Packages
呵呵。 因此,天才,由于某种原因,仍然认为10.0.0-3是最新版本。 它不是。 为什么? 我在一些蹩脚的镜子上,还是因为stream氓储存库?
$ cat /etc/apt/sources.list deb http://ftp.us.debian.org/debian/ unstable main contrib non-free deb-src http://ftp.us.debian.org/debian/ unstable main contrib non-free
好的,所以我在Debian的主镜像上,升级了一整天,所以任何cron延迟 – 现在都应该被处理,并且还是被破坏了。 我甚至在Debian Unstable的一个全新安装上尝试了上面的内容,仍然是一样的。 我现在正式不知道该怎么做。 也许服务器故障的人可以帮助。
基于apt-cache policy python-twisted-core ,apt没有看到版本10.1.0-1存在。 它显示版本10.0.0-3可以从您期望的来源安装。
仅供参考,问题可能是因为忘记运行apt-get update (或类似aptitude update ),或者由于某些原因(如networking错误)导致更新命令失败。 但我不认为这是你的事情。
问题可能是镜子不是最新的。 但是我查了一下,似乎和其他镜子有相同的内容。
你不知道你在哪个架构上。 我的猜测是你的架构还没有更新的版本。
一个软件包出现在所有的体系结构中往往需要几天的时间,因为一些体系结构比其他体系结构有更多的计算能力。 虽然python-twisted-core是独立于架构的,但它的源代码包却不是。 您可以通过查看来自同一个源的依赖于体系结构的包的页面来查看哪些体系结构具有哪些版本。 我看到,截至今天,i386有10.1.0-1,但amd64仍有10.0.0-3。 python-twisted-mail来自不同的包,因为它依赖于体系结构,因此它可以快速传播。
testing可以保护你免受这种担忧。 除非你真的需要更新的版本,否则很有可能从testing中抓取所有的python-twisted软件包将解决你的问题。 这样做的最简单的方法是将testing添加到你的sources.list (因为来自testing的包比不稳定的包更旧,所以除非你提供明确的请求,否则不应该改变被安装的东西),并且手动select10.0.0 -3版本在aptitude的交互式UI中。
真正的问题,幕后,可以在相关的debian用户线程中解释 :
谢谢,我明白了。 问题是扭曲的源代码包(它构build了python-twisted二进制包)还没有上传到amd64上,即使python-twisted是arch:all包,它仍然保留在旧版本中。
以前,arch:all软件包在所有的arch上都是同步的,但是因为当foo(arch:any)依赖于同一个源代码版本的foo-common(arch:all)而且foo还没有被构build的时候,它通常会创build一个uninstallabilities, FTP主人改变了这一点。
在这种情况下,这会产生不希望的副作用,即来自不同源代码包的包依赖于新版本的python-twisted-core,从而使它们可以在amd64上卸载。
嗯是的。 就像在Gilles的回答中一样,问题在于这个软件包并不是为amd64而devise的,而是因为主要的软件包是独立于平台的,所以它在混洗中被放错了位置。 我认为。 但是,不用担心,只要按照Gilles的回答中所述的方法来解决问题,把问题通知给debian邮件列表(比如debian-user ),希望他们有一个令人困惑的bug报告 ,并且要有耐心。 这太传递了。 特别是在锡德。