我在 12.04x64 上遇到了 wine 和 multiarch 的依赖问题。我需要解决方案

我在 12.04x64 上遇到了 wine 和 multiarch 的依赖问题。我需要解决方案

编辑3:请参阅底部的 TL;DR-ish 版本。

我想从 ppa:ubuntu-wine/ppa 存储库安装 wine1.5。这样还算合理吧?

(我正在运行 12.04 x64 和自定义内核。)

我添加了他们的存储库。运行良好。

我使用 apt-get 更新。运行良好。(我这样做时注释掉了我的存储库。sources.list 基本上是默认的,减去 extras、partner 和 deb-src 条目)

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install wine1.5
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. --SNIP--

The following packages have unmet dependencies:
 wine1.5 : Depends: wine1.5-i386 (= 1.5.20-0ubuntu1)
E: Unable to correct problems, you have held broken packages.

好吧...

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install wine1.5-i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. --SNIP--
The following packages have unmet dependencies:
 wine1.5-i386:i386 : Depends: libgl1-mesa-glx:i386 but it is not going to be installed or
                          libgl1:i386
                 Depends: libglu1-mesa:i386 but it is not going to be installed or
                          libglu1:i386
E: Unable to correct problems, you have held broken packages.

我稍微跟踪了一下该错误信息。

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install libgl1:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libgl1:i386 is a virtual package provided by:
  libgl1-mesa-swx11:i386 8.0.4-0ubuntu0.2
  libgl1-mesa-glx:i386 8.0.4-0ubuntu0.2
You should explicitly select one to install.

E: Package 'libgl1:i386' has no installation candidate

继续...

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install libgl1-mesa-glx:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. --SNIP--

The following packages have unmet dependencies:
 libgl1-mesa-glx:i386 : Depends: libdrm2:i386 (>= 2.3.1) but it is not going to be installed
                    Recommends: libgl1-mesa-dri:i386 (>= 7.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

这已经有点老了...

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install libdrm2:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. --SNIP--

The following packages have unmet dependencies:
 openssh-client : Depends: adduser (>= 3.10) but it is not going to be installed
              Depends: passwd
 openssh-server : Depends: upstart-job
              Depends: adduser (>= 3.9) but it is not going to be installed
              Depends: procps
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get install  openssh-client openssh-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
openssh-client is already the newest version.
openssh-server is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

我确实有一个本地存储库,我将存档复制到我的 /var/cache/apt/archives 文件夹中,并使用它们生成索引。我使用它来更新这台机器和房子里的其他三台机器,而不是多次下载软件包。此存档未签名,结果显示“您要安装这些未签名的软件包吗?”

此外,synaptic 的“已安装(手动)”列表中列出了相当多的软件包。这可能与问题有关吗?

编辑:我还尝试了一些相当常见的“修复 apt-get”技术:

root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@e330:/home/nroach44/local/build/linux/src/3.5.7/linux-3.5.7# apt-get dist-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

编辑2:/var/log/dist-upgrade/ 为空。/var/log/apt/ 不包含任何相关信息。此外,dpkg --get-selections | grep hold 不返回任何内容。

编辑3:经过两次重新安装,似乎 kernel-package 与 wine 冲突。在全新安装中:

root@e330:~# apt-get install wine kernel-package
--Standard apt-get loading stuff--
Some packages could not be installed blah blah

The following have unmet dependencies:
 kernel-package : depends: po-debconf but it is not going to be installed
                    ""   : gettext    """"""

让我恼火的是,我在我的桌面上安装了这两个,并且一切运行正常。

答案1

使用创建新源列表本网站。选择您的版本并根据您的要求选择源。在额外的存储库列表中勾选 Wine。单击生成列表,您将获得生成的源列表。

现在使用在终端上执行以下命令来编辑您的源列表

sudo nano /etc/apt/sources.list

删除所有行并复制生成的列表,然后按保存文件Ctrl+X,选择是的. 使用以下方式更新您的软件包列表

sudo apt-get update

现在尝试安装 Wine

sudo apt-get install wine

一小时前修复了我的系统上的相同问题。

答案2

您是否在 64 位系统上安装了 ia32-libs 或 ia32-libs-multiarch?
最近,在安装 ia32-libs 后,我的 E330 出现了非常奇怪的依赖关系问题,触控板也坏了。

经过几天的折腾和几次全新安装后,我发现,在全新安装后,我必须将 ia32-libs 作为第一个软件包进行安装。

之前我安装了大约 30 个软件包,ia32-libs 是最后一个 - 这导致了非常非常奇怪的依赖关系问题,甚至损坏了触控板驱动程序。但仅限于联想 e330...

希望这对某人有帮助

相关内容