我该如何克服这些包依赖问题?

我该如何克服这些包依赖问题?

我升级到了 11.10,升级过程中断电了。重启机器后,我尝试继续升级,并在某一时刻进行了部分升级,以解决依赖性问题,我当时认为这些问题与升级失败有关。现在我的系统基本可以正常工作。问题是我无法再安装“acroread”包,因为存在依赖性错误:

~ $ sudo apt-get install acroread
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:
 acroread : Depends: nspluginwrapper but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

~ $ sudo apt-get install nspluginwrapper

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:
 nspluginwrapper : Depends: nspluginviewer (= 1.4.4-0ubuntu3)
E: Unable to correct problems, you have held broken packages.

 ~ $ sudo apt-get install nspluginviewer

R

eading 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:
 nspluginviewer:i386 : Depends: libgtk2.0-0:i386 (>= 2.8.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

我运行的是 64 位系统,但 acroread 似乎需要一些无法安装的 32 位库。在阅读过程中,我发现多架构包发生了一些变化。

有人知道我该如何修复我的系统来解决这个问题吗?

答案1

尝试一下sudo apt-get install -f。它可能会给出一些关于删除和安装软件包的建议,请按照合理方式操作。如果没有帮助,请尝试启动到恢复模式并选择“修复损坏的软件包”。如果这不起作用...我不知道,如果我是你,我会重新安装 Ubuntu。(这是始终将 /home 放在单独分区上的一个很好的理由!)

答案2

最新版本添加了多架构支持。32 位库作为 32 位库添加。我怀疑您需要安装 ia32-libs-multiarch。尝试以下命令:

sudo apt-get install ia32-libs-multiarch:i386
sudo apt-get check

让我大吃一惊。我还发现 aptitude 尚未更新以支持此更改。

答案3

在尝试安装 32 位库之前,您需要启用多架构:

 echo foreign-architecture i386 | sudo tee /etc/dpkg/dpkg.cfg.d/multiarch

完成这些操作后,您就能安装您需要的任何 32 位库。

答案4

只需将命令中的“apt-get”部分替换为“aptitude”,然后按照说明操作,然后就应该没问题了。

相关内容