Попытка добавить архитектуру i386 для установки Wine на 22.04

Вопрос или проблема

Я пытаюсь установить wine, но когда говорится, что мне нужен wine32, я не могу его установить, получая аналогичные сообщения при попытке установить зависимости i386.

Я прочитал пост (Cannot install wine32 in Jammy (22.04)), где человек сократил это до libsystemd0

из dpkg-architecture -l:

DEB_BUILD_ARCH=amd64
DEB_BUILD_ARCH_ABI=base
DEB_BUILD_ARCH_BITS=64
DEB_BUILD_ARCH_CPU=amd64
DEB_BUILD_ARCH_ENDIAN=little
DEB_BUILD_ARCH_LIBC=gnu
DEB_BUILD_ARCH_OS=linux
DEB_BUILD_GNU_CPU=x86_64
DEB_BUILD_GNU_SYSTEM=linux-gnu
DEB_BUILD_GNU_TYPE=x86_64-linux-gnu
DEB_BUILD_MULTIARCH=x86_64-linux-gnu
DEB_HOST_ARCH=amd64
DEB_HOST_ARCH_ABI=base
DEB_HOST_ARCH_BITS=64
DEB_HOST_ARCH_CPU=amd64
DEB_HOST_ARCH_ENDIAN=little
DEB_HOST_ARCH_LIBC=gnu
DEB_HOST_ARCH_OS=linux
DEB_HOST_GNU_CPU=x86_64
DEB_HOST_GNU_SYSTEM=linux-gnu
DEB_HOST_GNU_TYPE=x86_64-linux-gnu
DEB_HOST_MULTIARCH=x86_64-linux-gnu
DEB_TARGET_ARCH=amd64
DEB_TARGET_ARCH_ABI=base
DEB_TARGET_ARCH_BITS=64
DEB_TARGET_ARCH_CPU=amd64
DEB_TARGET_ARCH_ENDIAN=little
DEB_TARGET_ARCH_LIBC=gnu
DEB_TARGET_ARCH_OS=linux
DEB_TARGET_GNU_CPU=x86_64
DEB_TARGET_GNU_SYSTEM=linux-gnu
DEB_TARGET_GNU_TYPE=x86_64-linux-gnu
DEB_TARGET_MULTIARCH=x86_64-linux-gnu

Я добавил архитектуру:
dpkg –add-architecture i386

Она отображается здесь:
dpkg –print-foreign-architectures
i386

но я не могу установить:

apt-cache policy libsystemd0:{amd64,i386}
libsystemd0:
  Installed: 249.11-0ubuntu3.4
  Candidate: 249.11-0ubuntu3.4
  Version table:
 *** 249.11-0ubuntu3.4 100
        100 /var/lib/dpkg/status
     249.11-0ubuntu3 500
        500 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages
libsystemd0:i386:
  Installed: (none)
  Candidate: 249.11-0ubuntu3
  Version table:
     249.11-0ubuntu3 500
        500 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages
apt install libsystemd0: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:
 apt : Depends: adduser but it is not going to be installed
       Depends: gpgv or
                gpgv2 but it is not going to be installed or
                gpgv1 but it is not going to be installed
       Depends: libapt-pkg6.0 (>= 2.4.6) but it is not going to be installed
       Depends: libc6 (>= 2.34) but it is not installable
       Depends: libgcc-s1 (>= 3.3.1) but it is not going to be installed
       Depends: libgnutls30 (>= 3.7.0) but it is not going to be installed
       Depends: libseccomp2 (>= 2.4.2) but it is not going to be installed
       Depends: libstdc++6 (>= 11) but it is not going to be installed
       Depends: libsystemd0 but it is not installable
       Recommends: ca-certificates but it is not going to be installed

Редактирование: для записи, следуя инструкциям здесь:
https://www.linuxcapable.com/how-to-install-winehq-on-ubuntu-22-04-lts/

sudo apt install software-properties-common apt-transport-https wget -y
wget -O- https://dl.winehq.org/wine-builds/winehq.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/winehq.gpg
echo deb [signed-by=/usr/share/keyrings/winehq.gpg] http://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -cs) main | sudo tee /etc/apt/sources.list.d/winehq.list

Все эти команды завершаются без ошибок. Затем

root@michalk-desktop:~# apt update
Hit:1 http://us.archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://dl.winehq.org/wine-builds/ubuntu jammy InRelease [8,041 B]                                                     
Hit:3 http://security.ubuntu.com/ubuntu jammy-security InRelease                                                            
Get:4 http://dl.winehq.org/wine-builds/ubuntu jammy/main amd64 Packages [35.1 kB]                                  
Get:5 http://dl.winehq.org/wine-builds/ubuntu jammy/main all Packages [928 B]                                                                                   
Get:6 http://dl.winehq.org/wine-builds/ubuntu jammy/main i386 Packages [34.9 kB]                                                                                
Hit:7 https://download.virtualbox.org/virtualbox/debian jammy InRelease                                                                        
Hit:8 https://ppa.launchpadcontent.net/savoury1/chromium/ubuntu jammy InRelease                                    
Hit:9 https://ppa.launchpadcontent.net/savoury1/ffmpeg4/ubuntu jammy InRelease
Fetched 79.0 kB in 2s (35.1 kB/s)                          
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
All packages are up to date.
root@michalk-desktop:~# sudo apt install winehq-stable --install-recommends  -y
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package winehq-stable

Итак, пытаюсь staging:

root@michalk-desktop:~# sudo apt install winehq-staging --install-recommends  -y
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:
 winehq-staging : Depends: wine-staging (= 7.14~jammy-1)
E: Unable to correct problems, you have held broken packages.

root@michalk-desktop:~# sudo apt install wine-staging --install-recommends  -y
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:
 apt : Depends: libapt-pkg6.0 (>= 2.4.6) but it is not going to be installed
       Depends: libsystemd0 but it is not installable
 bsdutils : PreDepends: libsystemd0 but it is not installable
 init : PreDepends: systemd-sysv
 libasound2:i386 : Depends: libc6:i386 (>= 2.34) but it is not installable
 libasound2-plugins:i386 : Depends: libc6:i386 (>= 2.34) but it is not installable
                           Depends: libjack-jackd2-0:i386 (>= 1.9.10+20150825) but it is not installable or
                                    libjack-0.125:i386
                           Depends: libpulse0:i386 (>= 0.99.1-1~) but it is not installable

и так далее.

Редактирование:

sudo apt install --reinstall libsystemd0=249.11-0ubuntu3
...
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:
 init : PreDepends: systemd-sysv
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Эта машина является свежей установкой, примерно одной недели давности. Единственные остатки от 20.04 — это моя домашняя директория. Я не фиксирую пакеты и редко устанавливаю пакеты с dpkg -i, чтобы избежать зависимости. Я не думаю, что у меня есть поврежденные пакеты, я думаю, что это то, что он считает «невозможной ситуацией». Возможно, мне будет проще переустановить ОС.

Редактирование: больше информации.

dpkg -l | egrep -v '^ii|rc'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
+++-==========================================-=============================================-============-================================================================================
grep -r deb /etc/apt/sources.list /etc/apt/sources.list.d/
/etc/apt/sources.list:deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] https://download.virtualbox.org/virtualbox/debian jammy contrib
/etc/apt/sources.list:# deb cdrom:[Ubuntu 22.04 LTS _Jammy Jellyfish_ - Release amd64 (20220419)]/ jammy main restricted
/etc/apt/sources.list:deb http://us.archive.ubuntu.com/ubuntu/ jammy main restricted
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy main restricted
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy-updates main restricted
/etc/apt/sources.list:deb http://us.archive.ubuntu.com/ubuntu/ jammy universe
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy universe
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy-updates universe
/etc/apt/sources.list:deb http://us.archive.ubuntu.com/ubuntu/ jammy multiverse
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy multiverse
/etc/apt/sources.list:# deb-src http://us.archive.ubuntu.com/ubuntu/ jammy-updates multiverse
/etc/apt/sources.list:deb-src http://us.archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
/etc/apt/sources.list:deb http://security.ubuntu.com/ubuntu jammy-security main restricted
/etc/apt/sources.list:# deb-src http://security.ubuntu.com/ubuntu jammy-security main restricted
/etc/apt/sources.list:deb http://security.ubuntu.com/ubuntu jammy-security universe
/etc/apt/sources.list:# deb-src http://security.ubuntu.com/ubuntu jammy-security universe
/etc/apt/sources.list:deb http://security.ubuntu.com/ubuntu jammy-security multiverse
/etc/apt/sources.list:# deb-src http://security.ubuntu.com/ubuntu jammy-security multiverse
/etc/apt/sources.list:# (e.g. netinst, live or single CD). The matching "deb cdrom"
/etc/apt/sources.list.d/savoury1-ubuntu-ffmpeg4-jammy.list:deb https://ppa.launchpadcontent.net/savoury1/ffmpeg4/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-ffmpeg4-jammy.list:# deb-src https://ppa.launchpadcontent.net/savoury1/ffmpeg4/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-chromium-jammy.list:deb https://ppa.launchpadcontent.net/savoury1/chromium/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-chromium-jammy.list:# deb-src https://ppa.launchpadcontent.net/savoury1/chromium/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-chromium-jammy.list.save:deb https://ppa.launchpadcontent.net/savoury1/chromium/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-chromium-jammy.list.save:# deb-src https://ppa.launchpadcontent.net/savoury1/chromium/ubuntu/ jammy main
/etc/apt/sources.list.d/owncloud.list:deb https://download.owncloud.com/desktop/ownCloud/stable/2.10/linux/Ubuntu_22.04/ /
/etc/apt/sources.list.d/savoury1-ubuntu-ffmpeg4-jammy.list.save:deb https://ppa.launchpadcontent.net/savoury1/ffmpeg4/ubuntu/ jammy main
/etc/apt/sources.list.d/savoury1-ubuntu-ffmpeg4-jammy.list.save:# deb-src https://ppa.launchpadcontent.net/savoury1/ffmpeg4/ubuntu/ jammy main

Редактирование: больше информации
root@michalk-desktop:~# apt-show-versions | fgrep avail
root@michalk-desktop:~#
apt-show-versions ничего не содержит с “avail”

sudo apt install --reinstall libsystemd0=249.11-0ubuntu3

Версии 64-битных пакетов и 32-битных должны совпадать.

apt-cache policy libsystemd0:{amd64,i386}
libsystemd0:
  Installed: 249.11-0ubuntu3.4  #here to high version
  Candidate: 249.11-0ubuntu3.4
  Version table:
 *** 249.11-0ubuntu3.4 100
        100 /var/lib/dpkg/status
     249.11-0ubuntu3 500
        500 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages
libsystemd0:i386:
  Installed: (none)
  Candidate: 249.11-0ubuntu3
  Version table:
     249.11-0ubuntu3 500
        500 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages

Пожалуйста, попробуйте снова.

Ответ или решение

Проблема, с которой вы столкнулись при установке Wine на Ubuntu 22.04, связана с отсутствием возможности установки необходимых зависимостей для архитектуры i386. Эта архитектура требуется для wine32, так как она обеспечивает поддержку 32-битных приложений, которые обычно запускаются через Wine. Давайте разберемся в деталях и найдем решения вашей проблемы.

Теория

Ubuntu использует пакетный менеджер apt для управления программным обеспечением и зависимостями. Столкнувшись с попыткой установить wine32, ваша система требует установки нескольких библиотек для архитектуры i386, чтобы обеспечить совместимость с 32-битными Windows-приложениями. Однако в вашем случае возникают ошибки несовместимости версий и зависимостей, что указывает на проблему с настройками пакетов и источников репозиториев.

Пример

На основании предоставленной информации, происхождение проблемы можно увидеть в несоответствии версий библиотек. Основной проблемой является то, что 64-битная и 32-битная версии libsystemd0 имеют разные версии:

  • Установлена версия 249.11-0ubuntu3.4 для 64-битной архитектуры (amd64)
  • Кандидат для 32-битной архитектуры (i386) — 249.11-0ubuntu3, которая не совпадает с установленной версией для amd64.

Различия в версиях приводят к невозможности удовлетворить зависимости.

Применение

Шаг 1: Синхронизация версий библиотек

Необходимо убедиться, что версии библиотек libsystemd0 совпадают для обеих архитектур.

  1. Откатите версию libsystemd0 для amd64 до 249.11-0ubuntu3, чтобы она соответствовала 32-битной версии:

    sudo apt install --reinstall libsystemd0=249.11-0ubuntu3
  2. После этого выполните:

    sudo apt update
    sudo apt upgrade

Убедитесь, что конфигурация пакета не содержит фиксации или удержания пакетов в определённых версиях.

Шаг 2: Установка и настройка Wine

Чтобы успешно установить Wine, следуйте приведённым шагами для добавления ирехё структуры и установки Wine:

  1. Добавьте i386 архитектуру:

    sudo dpkg --add-architecture i386
  2. Обновите список пакетов:

    sudo apt update
  3. Убедитесь, что репозиторий wine добавлен и корректно работает. Для этого проверьте файл /etc/apt/sources.list.d/winehq.list на наличие правильного входа, например:

    deb [signed-by=/usr/share/keyrings/winehq.gpg] http://dl.winehq.org/wine-builds/ubuntu/ jammy main
  4. Попробуйте установить Wine:

    sudo apt install winehq-stable -y

Если появляются ошибки с зависимостями:

  • Проверьте, не удерживаются ли пакеты на ваших системах: sudo apt-mark showhold
  • Убедитесь, что у вас включены все необходимые репозитории: main, universe, multiverse.

Поиск и исправление других возможных проблем

  • Попробуйте использовать aptitude вместо apt, так как иногда aptitude может предоставлять более лучшую диагностику и действия по исправлению зависимости:

    sudo aptitude install winehq-stable
  • Если проблема не решена, проверьте на наличие конфликтующих PPA или источников программ:

    • Используйте grep, чтобы проверить, где конфликты могут возникнуть:
      grep -r deb /etc/apt/sources.list /etc/apt/sources.list.d/

Удалите или закомментируйте любые источники, которые могут вносить современные или несовместимые пакеты.

Соблюдая вышеуказанные шаги, вы должны быть в состоянии установить wine32 на Ubuntu 22.04. Следование этим рекомендациям надеемся решит исходные проблемы с зависимостями. Однако если сложность сохраняется, возможно, стоит попробовать чистую установку ОС с соответствующими обновлениями и повторить процесс с начального этапа.

Оцените материал
Добавить комментарий

Капча загружается...