Debian

無法在新的 Debian Buster 安裝上安裝 Steam

  • September 23, 2020

我剛剛安裝了一個全新的 Debian 安裝,但我無法安裝 Steam 和 PCSX2,兩者都取決於 i386 軟體包。

我遵循經典程序:

# dpkg --add-architecture i386
# apt update
# apt upgrade

當我嘗試安裝 Steam 時,apt無法安裝 i386 軟體包:

# apt install -f steam
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:
steam:i386 : Depends: libgl1-mesa-glx:i386 but it is not going to be installed
             Recommends: mesa-vulkan-drivers:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

嘗試安裝 PCSX2 時相同

# apt install pcsx2
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:
pcsx2:i386 : Depends: libgl1:i386 but it is not going to be installed
             Depends: libsdl2-2.0-0:i386 (>= 2.0.8) but it is not going to be installed
             Depends: libwxgtk3.0-0v5:i386 (>= 3.0.4+dfsg) but it is not going to be installed
             Recommends: libasound2-plugins:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

wine32

# apt install wine32
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:
wine32:i386 : Depends: libwine:i386 (= 4.0-2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

如果我嘗試模擬安裝軟體包時apt抱怨我得到以下資訊:

apt install -s libgl1-mesa-glx:i386
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:
libgl1-mesa-glx:i386 : Depends: libgl1:i386 but it is not going to be installed
                       Depends: libglx-mesa0:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

如果我嘗試安裝libgl1:i386libglx-mesa0:i386我得到:

apt install libgl1:i386
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:
libgl1:i386 : Depends: libglx0:i386 (= 1.1.0-1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

# apt install libglx-mesa0:i386
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:
libglx-mesa0:i386 : Depends: libx11-xcb1:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

然後安裝 libx11-xcb1:i386

# apt install libx11-xcb1:i386
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:
libgl1 : Depends: libglx0 (= 1.1.0-1) but it is not going to be installed
libglx-mesa0 : Depends: libx11-xcb1 but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
# apt policy libx11-xcb1{,:i386}
libx11-xcb1:
 Installed: 2:1.6.12-1
 Candidate: 2:1.6.12-1
 Version table:
*** 2:1.6.12-1 100
       100 /var/lib/dpkg/status
    2:1.6.7-1 500
       500 http://deb.debian.org/debian buster/main amd64 Packages
libx11-xcb1:i386:
 Installed: (none)
 Candidate: 2:1.6.7-1
 Version table:
    2:1.6.7-1 500
       500 http://deb.debian.org/debian buster/main i386 Packages

這是我的內容/etc/apt/sources.list

deb http://deb.debian.org/debian buster main contrib non-free

deb-src http://deb.debian.org/debian buster main contrib non-free

deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free

deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free

deb http://deb.debian.org/debian buster-updates main contrib non-free

deb-src http://deb.debian.org/debian buster-updates main contrib non-free
# apt policy libx11-xcb1{,:i386}
libx11-xcb1:
 Installed: 2:1.6.12-1
 Candidate: 2:1.6.12-1
 Version table:
*** 2:1.6.12-1 100
       100 /var/lib/dpkg/status
    2:1.6.7-1 500
       500 http://deb.debian.org/debian buster/main amd64 Packages
libx11-xcb1:i386:
 Installed: (none)
 Candidate: 2:1.6.7-1
 Version table:
    2:1.6.7-1 500
       500 http://deb.debian.org/debian buster/main i386 Packages

顯示問題的根源:apt無法安裝與i386已安裝相同版本的軟體包amd64(與 Debian 測試匹配,而不是 Debian 10)。Multiarch 包必須保持完全同步。

要解決此問題,您必須將受影響的軟體包降級到 Debian 10 版本,或者i386從 Debian testing 安裝版本(如果需要,可能升級amd64軟體包),或者將批發切換到 Debian testing。

順便說一句,這意味著您的設置不是全新的 Debian Buster 安裝。

引用自:https://unix.stackexchange.com/questions/610918