LINUX.ORG.RU

Ошибка: циклические зависимости:

 , , ,


0

2

Хочу установить emerge --ask virtual/wine

Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB

 * Error: circular dependencies:

(media-libs/freetype-2.10.4:2/2::gentoo, ebuild scheduled for merge) depends on
 (media-libs/harfbuzz-2.8.1:0/0.9.18::gentoo, ebuild scheduled for merge) (buildtime)
  (media-libs/freetype-2.10.4:2/2::gentoo, ebuild scheduled for merge) (buildtime_slot_op)

 * Note that circular dependencies can often be avoided by temporarily
 * disabling USE flags that trigger optional dependencies.

Если ставлю флаг: USE=-truetype emerge --oneshot media-libs/harfbuzz

То

It might be possible to solve this slot collision
by applying all of the following changes:
   - media-libs/harfbuzz-2.8.1 (Change USE: +truetype)


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

Ответ на: комментарий от eternal_sorrow

Пробовал и так, тоже самое выходит:

It might be possible to solve this slot collision
by applying all of the following changes:
   - media-libs/freetype-2.10.4 (Change USE: +harfbuzz)
pinux
() автор топика
Ответ на: комментарий от pinux

ок, удали пакеты, которые требуют media-libs/freetype[harfbuzz] или media-libs/harfbuzz[freetype] (можно даже через -C, игнорируя зависимости), затем поставь freetype и harfbuzz, затем поставь обратно эти пакеты.

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

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

а вообще, не очень понятно, как такая ситуация вообще могла произойти. это давно не обновлённая система?

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

а вообще, не очень понятно, как такая ситуация вообще могла произойти

Доброе утро. С разморозкой.

> equery u media-libs/freetype
++ harfbuzz  : Use media-libs/harfbuzz for auto-hinting OpenType fonts. WARNING: may trigger circular dependencies!

Правильный ответ Pinkbyte уже озвучил — установить один из компонентов порочного круга с --oneshot и --nodeps, предварительно поглядев ( equery d ) и разрешив вручную его зависимости. Либо установить без флага, затем пересобрать с флагом.

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

Я об этом отлично знаю. Но у него в системе судя по всему уже стоят оба пакета - и freetype и harfbuzz. И есть пакеты, которые требуют их по зависимости. Иначе сработало бы одно из двух USE=-truetype emerge -1 media-libs/harfbuzz или USE=-harfbuzz emerge -1 freetype.

eternal_sorrow ★★★★★
()

вопрос к ТС: когда последний раз обновлял мир?

eternal_sorrow ★★★★★
()

Как ты будешь пользоваться wine, если у тебя ещё не установлен freetype? Это значит, что у тебя даже не установлены тулкиты, и, возможно, иксы.

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

Там их много таких. Мне, например, нравится Package libpng was not found in the pkg-config search path.

Напомню — если в multilib ставится пакет с abi_x86_32, его зависимости тоже должны быть собраны под x86.

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

что непонятно в этой строчке?

Не заметил ее сразу.

вопрос к ТС: когда последний раз обновлял мир?

Пару дней назад, когда установил генту.

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

А, точно. Он же вайн ставит. А вайн потащит тонну этих abi_x86_32. Тогда понятно как такая ситуация возникла.

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

И почему у вайна до сих пор нет варианта сборки amd64-only? Понятно, что в таком режиме он не сможет запускать 32-битные вендовые приложения, но не всем это нужно.

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

Всё, разобрался. Установил bzip2 и libpng, обновил мир, а дальше всё понятно стало.

Спасибо всем за помощь. 🐧🐧🐧🐧

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

Разве нету? Никогда не приходило в голову такое извращение.

Проверять лениво, но на USE="-abi_x86_32" emerge -pv wine-staging virtual/wine вроде не ругается.

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

Напрашивается очевидный

ABI_X86="64" USE="-harfbuzz" emerge -1O freetype

Update: тред не читай, сразу отвечай. ТС, если ты ставишь wine с 32-битной поддержкой, убедись что ты не забыл флаги для 32-битных библиотек проставить.

TL;DR - содержимое /etc/portage/package.use в студию

Ну или, если не боишься устроить глобальное потепление и засрать себе винт:

ABI_X86="32 64"

в /etc/portage/make.conf

Update 2: тред не читай, сразу отвечай, вторая итерация: главное - вовремя дать совет, особенно когда ТС уже разобрался :-)

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

virtual/wine?

[ Файл «/etc/portage/package.use» является каталогом ]

внутри два файла zz-autounmask и kde-plasma-settings

Я не ставил флаги, просто вчера установилось это. Поспешил, да

Хочу чтобы была поддержка 32 и 64, почему это засрёт винт?

pinux
() автор топика
Последнее исправление: pinux (всего исправлений: 2)
Ответ на: комментарий от pinux

Хочу чтобы была поддержка 32 и 64, почему это засрёт винт?

Можно в USE отдельно поставить abi_x86_32 для wine (предполагаю, основная система у тебя 64–битная). Тогда wine потянет зависимости — им тоже нужен будет такой флаг. Установка с ним означает, что компилируются и устанавливаются в систему две версии пакета — 32– и 64–битная. Если у кого–то из зависимостей флаг не установлен — портаж об этом достаточно явно ругается и требует прописать.

Есть ещё вариант для особо ленивых извращенцев — установить в make.conf ABI_X86="32 64" для всей системы глобально. Это означает, что каждый пакет будет компилироваться дважды (т.е. требуется в два раза больше времени на компиляцию и места на диске). Минусы такого подхода очевидны. Плюс — не надо вести отдельный список пакетов для которых требуются 32-битные версии.

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

USE=«ABI_X86=64»

ОМГ что это? Просто ABI_X86=64. И поддержки 32 бит не будет.

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

Понял. У меня 64–битная, да.

Нужно устанавливать с USE="abi_x86_32". И всё, что 32бит потребует добавить тоже этот флаг.

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