LINUX.ORG.RU

зависимости wine переводят большу часть системы на x32 программы

 , ,


2

1

В вики написан список программ, которым надо установить use flag abi_x86_32, я их прописал, но этого мало, она требует больше и чем больше я меняю, тем больше список программ для которых мне нужно использовать этот флаг. Вот ошибка, исправляя которую, я открываю портал в ад зависимостей:

sudo emerge --ask  wine

These are the packages that would be merged, in order:

Calculating dependencies... done!

!!! The ebuild selected to satisfy ">=sys-auth/polkit-0.110" has unmet requirements.
- sys-auth/polkit-0.115-r4::gentoo USE="introspection nls -consolekit -elogind -examples -gtk -jit -kde -pam (-selinux) -systemd -test" ABI_X86="(64)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    exactly-one-of ( consolekit elogind systemd )

(dependency required by "sys-fs/udisks-2.8.4::gentoo" [ebuild])
(dependency required by "app-emulation/wine-vanilla-4.0.2::gentoo[udisks]" [ebuild])
(dependency required by "virtual/wine-0-r5::gentoo" [ebuild])
(dependency required by "wine" [argument])

Я что-то делаю не так? Почему это происходит? Или так и должно быть?



Последнее исправление: towe (всего исправлений: 3)

The following REQUIRED_USE flag constraints are unsatisfied:
exactly-one-of ( consolekit elogind systemd )

И что тебе не понятно?

XMs ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Тогда получиться, что у меня почти вся система на х32 сидеть будет. Разве это нормально? Нет возможности этого избежать? Это должно сказаться на производительности

towe
() автор топика
Ответ на: комментарий от towe

у тебя будет просто 2 копии каждой библиотеки - 32 и 64 битная. обычный софт будет использовать 64битные версии, никаких проблем производительности это не вызовет

eternal_sorrow ★★★★★
()
Ответ на: комментарий от XMs

Мне всё понятно, я уже исправлял эту ошибку. Проблема в том, что после того, как я это делаю, выскакивает неимоверное количество зависимостей с пресловутым флагом, а чем больше я их исправляю, тем больше зависимостей с этим же флагом он предлагает протащить. Более того, в какой-то момент у меня появляется клубок неразрешимых зависимостей на пол терминала.

towe
() автор топика
Ответ на: комментарий от vvn_black

Я что-то делаю не так? Почему это происходит? Или так и должно быть?

Так и должно.

Делаешь, emerge -qpuDN wine, потом в package.use выставляешь флаг abi_x86_32 для пакетов, которым это нужно. А ошибка, твоя напрямую с установкой wine не связана.

Или, если не хочешь «ломать» основную систему, поставь wine в контейнер.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)
Ответ на: комментарий от towe

У меня полторы тысячи пакетов собираются для двух платформ. Так и должно быть. Нет, на производительности это не скажется, если ты систему не с магнитной ленты пускаешь

XMs ★★★★★
()

Нет, не переводят. Они собираются в двух вариантах, и 64бит И 32бит. Можно уменьшить количество ненужных зависимостей, не только 32битных вручную настроив package.use, а не выставляя юз-флаги глобально.

anonymous
()

Тебе здесь понятно?

«>=sys-auth/polkit-0.110» has unmet requirements
exactly-one-of ( consolekit elogind systemd )

Пакету >=sys-auth/polkit-0.110 нужен какой-то один из флагов ( consolekit elogind systemd ) для работы в том варианте, какой ты пытаешься сконфигурировать.
Просто определись что тебе нужно и задай соответствующий флаг.

sys-auth/polkit-0.115-r4::gentoo USE="-consolekit -elogind -systemd"

В таком виде у тебя дело дальше не пойдёт.

imul ★★★★★
()
Ответ на: комментарий от towe

Проблема в том, что после того, как я это делаю, выскакивает неимоверное количество зависимостей с пресловутым флагом, а чем больше я их исправляю, тем больше зависимостей с этим же флагом он предлагает протащить.

Это не проблема. Так и должно быть.

imul ★★★★★
()
Ответ на: комментарий от towe

Это должно сказаться на производительности

GENTOO is Rice!

Разве это нормально?

Очевидно, вайн умеет запускать не только приложения win64, но и win32. Более того, под win32 приложений всё ещё больше, чем под win64. Для этого вайну нужны 32х-разрядные библиотеки под линукс.

Нет возможности этого избежать?

Вроде раньше был способ собрать 64bit-only wine. Может всё ещё есть. Но тогда ты потеряешь возможность запускать 32х-разрядный виндософт.

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

im-0
()

Я почему-то подумал, что у меня будут не две версии пакетов, а одна – 32х. Спасибо, что разъяснили.

towe
() автор топика
Ответ на: комментарий от im-0

под win32 приложений всё ещё больше

Нет, всё хуже. 64бит вендовый софт содержит 32бит компоненты, вроде установщиков и отдельных утилит.

anonymous
()

Индексация gentoo USE flag build

torvn77 ★★★★★
()
Ответ на: комментарий от grem

Зачем тогда гента вообще, если париться лень? Отдельные пакеы можно на любом дистрибутиве скомпилять в хомяк, если нужно.

anonymous
()

> exactly-one-of ( consolekit elogind systemd )
> systemd

Только не это

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)

Я что-то делаю не так? Почему это происходит? Или так и должно быть?

Ты не научился правильно пользоватся USE флагами в portage.

init_6 ★★★★★
()
Ответ на: комментарий от grem

Мне лень было париться по этому поводу и я просто прописал глобальный abi_x86_32

"У меня зачесался глаз и я отстрелил себе всю голову."

Браво!!!

init_6 ★★★★★
()
Ответ на: комментарий от anonymous

Зачем тогда гента вообще, если париться лень?

Чтобы не париться. Ты видел как выглядит конфиг у человека, решившего установить x_86_32? Там этот флаг для 216 пакетов прописан. А сколько всего пакетов, поддерживающих его в моей системе? Мне это уже не интересно даже, т.к. в системе всего ~900 пакетов.

grem ★★★★★
()
Ответ на: комментарий от grem

Не на генте вообще нет никаких конфигов, и не приходится ставить всю систему в двух разрядностях.

anonymous
()
Ответ на: комментарий от ass

etc-update. Ну да ладно. Нынче не принято думать.

Скорее, нынче принято думать за других. И ты этому пример.

Твоим действием конфиг ревращается в неподдерживаемое месиво, которое мне не нужно. Это то, от чего я как раз ушёл и для пакетов (и их зависимостей), которые очень хотят нечто подобное, у меня отдельные файлики. А так как они отдельные, то etc-update будет всё время предлагать писать в один из них. А возвращаясь к 32 битам - это не то, что меня должно беспокоить на общем фоне количества пакетов, которым он потребуется.

grem ★★★★★
()
Последнее исправление: grem (всего исправлений: 1)
Ответ на: комментарий от init_6

Это не ты в другой теме жаловался на то, как у тебя packages.use и packages.accept_keywords уродливо выглядит? Может у тебя ещё и список установленных пакетов в общем world файле хранится? Ну если тебе так удобнее, то ладно. А мне так не хочется что-то.

grem ★★★★★
()

Не надо ставить wine в систему. Это не есть хорошая практика даже для бинарных дистрибутивов. Ставьте в контейнер или поразвлекайтесь с winepak.

i586 ★★★★★
()
Ответ на: комментарий от XMs

У меня в системе с 940 пакетами, 228 имеют поддержку abi_x86_64. Всего на 12 больше чем у тебя. Просто в make.conf прописал ABI_X86="32 64".

grem ★★★★★
()
Ответ на: комментарий от towe

Это должно сказаться на производительности

Я тебя разочарую - даже твоё использование Женту вместо обычной Убунту не скажется на производительности. Разве что твоей, и то в отрицательную сторону.

Wine просто подтягивает кучу 32-битных библиотек, которые будут лежать на диске и занимать разве что место на диске. На производительности это никак не скажется.

meliafaro ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.