Skip to main content Link Menu Expand (external link) Copy Copied

Обновление спустя долгое время

Для начала лучше сконцентрироваться на обновлении системного сета:

emerge -avuDN @system

Затем можно приступать к обновлению мира:

emerge -avquDNp @world

Если конфликтов слишком много, то стоит убрать флаги -D(считывать полное дерево зависимостей пакетов вместо проверки прямых зависимостей) и -N(включить в список на установку уже установленные пакеты, в которых с момента предыдущей компиляции изменились USE-флаги).

Так-же можно добавить –backtrack=9999 (по умолчанию 10).

Проблемы при обновлении пакетов

Конфликт слотов

Проверить где используется наш пакет, например dev-lang/ghc:

qdepends -Q '%{CAT}/%{PN}:%{SLOT}' ^dev-lang/ghc

Принудительно провести пересборку всех кто зависит от dev-lang/ghc:

emerge --ignore-default-opts -va1 --keep-going=y $( qdepends -CQqqF '%{CAT}/%{PN}:%{SLOT}' '^dev-lang/ghc' )

Блокировка

Удалить всех кто блокирует пакет dev-lang/ghc

emerge -C $(qlist -IC dev-lang/ghc)

Удалить все пакеты Qt и установить заново

export INSTALLED_QT_PACKAGES=$(qlist -IC "dev-qt/*") && emerge -Ca ${INSTALLED_QT_PACKAGES} && emerge -av1 ${INSTALLED_QT_PACKAGES}