我正在尝试在我的 debian jessie 上安装 emacs,但出现以下包错误,
thinkpad-keith@debian-keith:~$ sudo apt install emacs
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
python-talloc : Breaks: python-samba (< 2:4.3.6+dfsg-2) but 2:4.2.10+dfsg-0+deb8u3 is to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
我在网上搜索过,但似乎没有一个有这个问题。
答案1
看起来错误信息与emacs的安装没有直接关系,而是由较早的操作引起的。
您当前安装的软件包似乎需要比 Debian Jessie 上可用的软件包python-talloc
更新的版本。这表明您当前可能拥有不适合 Jessie 的python-samba
版本。python-talloc
“Breaks:”对您的依赖python-talloc
与 Debian Stretch 上软件包的当前版本完全相同。所以您实际上可能安装了 Stretch 版本python-talloc
。请运行此命令来确定python-talloc
您当前拥有的确切版本:
dpkg-query -s python-talloc
如果“版本:”行显示“2.1.8-1”,则这就是 Stretch 的版本。在撰写本文时,Jessie 的最新版本是“2.1.2-0+deb8u1”。
如果您指定/etc/apt/sources.list
为Debian 版本stable
而不是jessie
.不幸的是,这曾经是 Debian 安装程序的默认设置,至少我上次检查时是这样。当 Debian 9“Stretch”于 2017 年 6 月 17 日发布时,别名“stable”从“jessie”切换为“stretch”,而“jessie”则获得了别名“oldstable”。
如果您使用的是 Debian 的稳定版本并且不更改您的/etc/apt/sources.list
文件以指向实际的发行版昵称而不是stable
之前的版本下一个稳定版本发布后,这种情况很容易发生。
如果您想继续使用 Jessie,您现在应该确保您/etc/apt/sources.list
仅指向“jessie”或“oldstable”软件包源,然后您应该识别并降级已安装到系统上的所有 Stretch 软件包以及任何更新。看起来python-talloc
就是其中之一。
如果您想升级到 Stretch,您应该首先阅读 Stretch 发行说明中的升级说明。