
Мне нужно установить некоторые пакеты для VNC-сервера на машине с CentOS 6.5, у которой нет доступа к репозиториям (поэтому мне приходится передавать необходимые мне RPM-пакеты с помощью sftp).
При попытке установить пакет libX11-1.6.0-6 я получил следующую ошибку:
ошибка: Неудачные зависимости: libxcb < 1.9.1-3 конфликтует с libX11-1.6.0-6.el6.i686
Итак, я обновил libxcb до требуемой версии, но я все еще получаю ту же ошибку. Я попытался принудительно установить libX11 с помощью --nodeps, но теперь у меня нет следующих библиотек: libxcb-glx.so.0 и libxcb.so.1.
Попытки переустановить, обновить или понизить версию libxcb для возврата библиотек оказались безуспешными.
Что мне делать ?
решение1
Сообщения сообщили вам, что libxcb
конфликтуют с libX11
. Последний может быть самостоятельным или (в случае ваших конфликтующих пакетов) использовать libxcb
для заменычастьДля libX11
этого требуется другой пакет для libX11
.
Вероятный сценарий — смешивание пакетов из разных репозиториев, как в этом обсуждении:Не могу обновить centos 6.6. Ошибка: Пакет: и дублируется. В нем кто-то пытался заставить свою систему использовать пакеты из другого репозитория (возможно, та же ситуация, что и у вас).
Если вам действительно нужен альтернативный репозиторий, то единственным выходом будет заменитьвсепакетов, которые в конечном итоге зависят от libxcb
( libX11
пакеты, зависящие отэтои т. д.) В противном случае ваша система будет нестабильна и выйдет из строя неожиданным образом (например, будет невозможно выполнить обновление).
Для этого вам нужно начать с поиска зависимых пакетов:
- Список пакетов в Yum, которые зависят от другого установленного пакета(полезно, если у вас есть система, в которой есть рабочие репозитории для обоих наборов репозиториев)
- Re: Запрос всех зависимых пакетовупоминает два варианта
rpm
(--whatrequires
и--whatprovides
), которые можно использовать для анализа сломанной системы).