Вопрос или проблема
Я на Kubuntu 22.04 и установил wine64 обычным способом с помощью apt:
$ wine --version
похоже, что wine32 отсутствует, вам следует установить его.
как root, пожалуйста, выполните "apt-get install wine32"
wine-6.0.3 (Ubuntu 6.0.3~repack-1)
$ wine64 --version
wine-6.0.3 (Ubuntu 6.0.3~repack-1)
Когда я пытаюсь установить wine32 с помощью “apt-get install wine32”, я получаю:
$ sudo apt install wine32
[sudo] пароль для oreo:
Чтение списков пакетов... Готово
Построение дерева зависимостей... Готово
Чтение информации о состоянии... Готово
Некоторые пакеты не могут быть установлены. Это может означать, что вы
запросили невозможную ситуацию или если вы используете нестабильное
распределение, некоторые необходимые пакеты еще не были созданы
или были перемещены из Incoming.
Следующая информация может помочь разрешить ситуацию:
Следующие пакеты имеют неудовлетворенные зависимости:
apt : Зависит: libapt-pkg6.0 (>= 2.4.5), но он не будет установлен
Зависит: libsystemd0, но он неустановим
bsdutils : PreDepends: libsystemd0, но он неустановим
init : PreDepends: systemd-sysv
shim-signed : Зависит: grub-efi-amd64-signed, но он не будет установлен или
grub-efi-arm64-signed, но он неустановим
Зависит: grub2-common (>= 2.04-1ubuntu24)
util-linux : PreDepends: libsystemd0, но он неустановим
PreDepends: libudev1 (>= 183), но он неустановим
E: Ошибка, pkgProblemResolver::Resolve возникли разрывы, это может быть вызвано удерживаемыми пакетами.
Это невозможно исправить, и я не могу понять, какой пакет вызывает проблему, который я должен понизить (другие, кто сталкивался с этой проблемой, должны были понизить некоторые пакеты).
Любая помощь очень ценится.
У меня была такая же проблема с Xubuntu 22.04 сегодня ночью, и это сводило меня с ума, пока я не разобрался. В моем случае у меня была новая версия libsystemd0
для amd64, которая не была доступна для i386. Была новая версия, доступная для amd64 и i386, но она не позволяла мне обновиться до нее из-за фазы обновлений.
Запустив apt-cache
, чтобы посмотреть политику libsystemd0
, показал:
$ apt-cache policy libsystemd0:{amd64,i386}
libsystemd0:
Установлено: 249.11-0ubuntu3.1
Кандидат: 249.11-0ubuntu3.1
Таблица версий:
249.11-0ubuntu3.3 1 (фаза 10%)
500 http://us.archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
*** 249.11-0ubuntu3.1 100
100 /var/lib/dpkg/status
249.11-0ubuntu3 500
500 http://us.archive.ubuntu.com/ubuntu jammy/main amd64 Packages
libsystemd0:i386:
Установлено: (нет)
Кандидат: 249.11-0ubuntu3
Таблица версий:
249.11-0ubuntu3.3 1 (фаза 10%)
500 http://us.archive.ubuntu.com/ubuntu jammy-updates/main i386 Packages
249.11-0ubuntu3 500
500 http://us.archive.ubuntu.com/ubuntu jammy/main i386 Packages
У меня была версия 249.11-0ubuntu3.1
установленная для amd64, но она не была доступна для i386. А версия 249.11-0ubuntu3.3
была в “карантине” из-за фазовых обновлений и имела 10% в приведенном выше выводе. И я не хотел рисковать понижением до 249.11-0ubuntu3
и сломать что-то неведомое.
У вас есть два варианта. Вы можете подождать еще несколько дней, пока обновление станет доступным. Обновите свою систему и попробуйте снова установить wine32
.
ИЛИ, сделайте так, как я, и включите фазовые обновления. Создайте файл /etc/apt/apt.conf.d/99phased-updates
и добавьте в него эту строку:
APT::Get::Always-Include-Phased-Updates "1";
Затем выполните apt-get update
и снова попробуйте установить wine32
.
Когда закончите, возможно, вы захотите изменить “1” на “0”, чтобы отключить автоматическое получение фазовых обновлений, поскольку это может быть полезно, чтобы не сломать что-то на бета-развертываниях.
Эти шаги работают для меня
sudo dpkg --add-architecture i386
sudo apt update
sudo apt-get install wine32
После добавления архитектуры i386 я сделал много вещей и ничего не сработало, поэтому я запустил sudo apt install sudo apt-get install libgd3:i386, и sudo apt-get install все зависимости с :i386 в конце с флагом предварительных обновлений в группе опций разработчика в программном обеспечении и обновлениях, затем sudo update и sudo apt install wine32:i386 и готово, мой ubuntu 22.04.02
Вопрос в том, почему установка пакета не удалась.
Судя по всему, эта проблема вызвана тем, что версия компилятора gcc не была правильно указана в ubunut jammy. Когда я установил через:
sudo apt install gcc-12
Я смог переустановить wine32 без проблем.
Ответ или решение
Проблема установки wine32 в Jammy (22.04) и её решение
Введение
Установка программного обеспечения в Linux иногда может вызывать сложности, особенно когда дело касается приложений, требующих поддержки разных архитектур, таких как wine32
на 64-разрядных системах. В данной статье мы рассмотрим, почему возникает проблема с установкой wine32
на Kubuntu 22.04 и предложим эффективные решения.
Описание проблемы
При попытке установить wine32
с помощью команды:
sudo apt install wine32
Вы получили сообщение об ошибке, указывающее на несоответствия зависимостей, в частности, проблемами с пакетами libsystemd0
, libudev1
и другими. Это типичная ситуация, когда фазы обновлений и архитектурные зависимости создают конфликты. Рассмотрим основные причины возникновения данной проблемы.
-
Фазовые обновления: Некоторые пакеты могут быть временно «в карантине» в процессе фазного обновления. В вашем случае версия
libsystemd0:i386
не соответствовала установленной версии дляamd64
, что привело к конфликту при разрешении зависимостей. -
Архитектурные зависимости: Для установки
wine32
необходимо добавить архитектуруi386
, если вы используете 64-разрядную версию системы.
Решения проблемы
-
Добавление архитектуры i386:
Прежде всего, убедитесь, что архитектураi386
добавлена. Для этого выполните следующие команды:sudo dpkg --add-architecture i386 sudo apt update
-
Фазовые обновления:
Чтобы избежать проблем с фазовыми обновлениями, вы можете разрешить использование этих обновлений, добавив следующую строку в файл конфигурации:echo 'APT::Get::Always-Include-Phased-Updates "1";' | sudo tee /etc/apt/apt.conf.d/99phased-updates
После этого снова выполните обновление и попробуйте установить
wine32
:sudo apt update sudo apt install wine32
-
Установка необходимых зависимостей:
Если ошибка сохраняется, установите требуемые зависимости вручную. В вашем случае вы могли бы установитьlibgd3:i386
и другие необходимые пакеты, определив их с помощью:sudo apt-get install libgd3:i386
-
Установка gcc:
Некоторым пользователям также удалось решить проблему установкой необходимой версии компилятораgcc
. Примените следующую команду для установки:sudo apt install gcc-12
После установки попробуйте снова установить
wine32
.
Заключение
Установка wine32
в Kubuntu 22.04 может столкнуться с проблемами из-за зависимостей и фазовых обновлений. Однако, следуя вышеперечисленным шагам, вы сможете преодолеть эти препятствия. Убедитесь, что ваша система обновлена и архитектуры правильно настроены.
Если вы столкнетесь с новыми ошибками, проверьте наличие обновлений для всех установленных пакетов или обратитесь к документации для получения дополнительной информации. Это обеспечит корректную работу wine32
и его зависимостей на вашей системе.