我尝试在 Debian 测试版上安装 wine32 软件包。虽然在我的其中一台机器上没有任何问题,但在这台机器上却无法运行:
sudo dpkg --add-architecture i386
sudo apt update && sudo apt full-upgrade
sudo apt install wine
这将安装以下软件包:
libwine wine wine64
并推荐wine32
但sudo apt install wine32
给了我:
Reading package lists... Done
Building dependency tree... Done
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:
libcurl3-gnutls : Depends: librtmp1 (>= 2.3) but it is not installable
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
更新:
尝试安装libcurl3-gnutls:i386
会得到相同的结果:
sudo apt install libcurl3-gnutls:i386
Reading package lists... Done
Building dependency tree... Done
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:
libcurl3-gnutls : Depends: librtmp1 (>= 2.3) but it is not installable
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
我无法解决这个问题。有任何想法吗?
答案1
我可以通过手动下载librtmp1:i386
并安装它来解决这个问题dpkg
,这给出了缺少依赖项的消息。然后我可以通过以下方式安装这些软件包来解决后者apt
:
sudo apt install libgmp10:i386 libgnutls30:i386 libhogweed6:i386 libnettle8:i386 zlib1g:i386 libp11-kit0:i386 libtasn1-6:i386 libffi8:i386
然后:
sudo apt install libcurl3-gnutls:i386
最后:
sudo apt install wine32
我不明白为什么 hack apt 无法自行解决这个依赖关系。但如果其他人都被这个问题绊倒了。这就是解决方案。
答案2
我刚刚在我的 Debian 的 Bullseye 版本上遇到了同样的问题。由于 librtmp1,我无法安装 win32:
# apt install librtmp1:i386
Reading package lists... Done
Building dependency tree... Done
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:
libcurl3-gnutls : Depends: librtmp1 (>= 2.3) but it is not installable
我尝试使用 dpkg 手动安装 i386 版本的 librtmp1。它失败了,但给了我一些解决问题的提示:
# dpkg -i ~avd/Downloads/librtmp1_2.4+20151223.gitfa8646d.1-2+b2_i386.deb
Selecting previously unselected package librtmp1:i386.
(Reading database ... 424606 files and directories currently installed.)
Preparing to unpack .../librtmp1_2.4+20151223.gitfa8646d.1-2+b2_i386.deb ...
De-configuring librtmp1:amd64 (2:2.4~20160119.gitfa8646dae-dmo7) ...
Unpacking librtmp1:i386 (2.4+20151223.gitfa8646d.1-2+b2) ...
dpkg: error processing package librtmp1:i386 (--install):
package librtmp1:i386 2.4+20151223.gitfa8646d.1-2+b2 cannot be configured because librtmp1:amd64 is at a different version (2:2.4~20160119.gitfa8646dae-dmo7)
dpkg: error processing package librtmp1:amd64 (--install):
package librtmp1:amd64 2:2.4~20160119.gitfa8646dae-dmo7 cannot be configured because librtmp1:i386 is at a different version (2.4+20151223.gitfa8646d.1-2+b2)
Processing triggers for libc-bin (2.31-13+deb11u5) ...
Errors were encountered while processing:
librtmp1:i386
librtmp1:amd64
# apt policy librtmp1:i386
librtmp1:i386:
Installed: 2.4+20151223.gitfa8646d.1-2+b2
Candidate: 2.4+20151223.gitfa8646d.1-2+b2
Version table:
*** 2.4+20151223.gitfa8646d.1-2+b2 100
100 http://deb.debian.org/debian bullseye/main i386 Packages
100 /var/lib/dpkg/status
# apt policy librtmp1
librtmp1:
Installed: 2:2.4~20160119.gitfa8646dae-dmo7
Candidate: 2:2.4~20160119.gitfa8646dae-dmo7
Version table:
*** 2:2.4~20160119.gitfa8646dae-dmo7 100
100 /var/lib/dpkg/status
2.4+20151223.gitfa8646d.1-2+b2 100
100 http://deb.debian.org/debian bullseye/main amd64 Packages
版本不同。我将 librtmp1 降级到 i386 软件包的相同版本并标记为保留。
# apt-get install librtmp1=2.4+20151223.gitfa8646d.1-2+b2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
android-libcrypto-utils giblib1 imagemagick-7-common libb2-1 libbotan-2-17 libcmis-0.5-5v5 libffms2-4 libgdl-3-5
libgdl-3-common libigdgmm11 libmagick++-7-5 libmagickcore-7-9 libmagickwand-7-9 libmwaw-0.3-3 libnumbertext-1.0-0
libnumbertext-data libopencsd0 liborcus-0.16-0 liborcus-parser-0.16-0 libplacebo104 libqrcodegencpp1 libraqm0
libsixel1 libtspi1 libzip4 linux-headers-5.10.0-10-common linux-headers-5.10.0-16-common
linux-headers-5.10.0-9-common linux-perf-5.10 python3-cssutils python3-pyxattr python3-toml rtmpdump sse3-support
vapoursynth vapoursynth-ffms2 youtube-dl
Use 'apt autoremove' to remove them.
The following packages will be DOWNGRADED:
librtmp1
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 1 not upgraded.
2 not fully installed or removed.
Need to get 60.8 kB of archives.
After this operation, 2,048 B of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://deb.debian.org/debian bullseye/main amd64 librtmp1 amd64 2.4+20151223.gitfa8646d.1-2+b2 [60.8 kB]
Fetched 60.8 kB in 0s (582 kB/s)
dpkg: warning: downgrading librtmp1:amd64 from 2:2.4~20160119.gitfa8646dae-dmo7 to 2.4+20151223.gitfa8646d.1-2+b2
(Reading database ... 424608 files and directories currently installed.)
Preparing to unpack .../librtmp1_2.4+20151223.gitfa8646d.1-2+b2_amd64.deb ...
Unpacking librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b2) over (2:2.4~20160119.gitfa8646dae-dmo7) ...
Setting up librtmp1:amd64 (2.4+20151223.gitfa8646d.1-2+b2) ...
Setting up librtmp1:i386 (2.4+20151223.gitfa8646d.1-2+b2) ...
Processing triggers for libc-bin (2.31-13+deb11u5) ...
# apt-mark hold librtmp1
从那里,我可以安装 wine32。