Назад | Перейти на главную страницу

Как разрешить конфликт пакетов в Centos 6

Я пытаюсь обновиться с php 5.5 до 5.6, пока мне удалось перейти на php5.6, настроить suPHP 0.7 и добавить расширение php-mysql. Я использовал веб-репозиторий для установки php 5.6, на котором я читал эта страница что не рекомендуется использовать webtatic вместе с remi. Поэтому я удалил файлы в /etc/yum.conf.d/, чтобы не было webtatic в списке репо.

Однако мне не удалось установить php-xml для DomDocument, некоторые CMS его используют.

Я попытался :

yum install php-xml

не работает

yum --enablerepo remi install php-xml

Это дает мне сообщение:

Résolution des dépendances
--> Lancement de la transaction de test
---> Package php-xml.x86_64 0:5.5.38-7.el6.remi will be installé
--> Traitement de la dépendance : php-common(x86-64) = 5.5.38-7.el6.remi     pour le paquet : php-xml-5.5.38-7.el6.remi.x86_64
--> Lancement de la transaction de test
---> Package php-common.x86_64 0:5.5.38-7.el6.remi will be installé
--> Traitement de la dépendance : php-pecl-jsonc(x86-64) pour le paquet : php-common-5.5.38-7.el6.remi.x86_64
--> Lancement de la transaction de test
---> Package php-pecl-jsonc.x86_64 0:1.3.10-2.el6.remi.5.5 will be installé
--> Traitement du conflit : php56w-common-5.6.31-2.w6.x86_64 entre en conflit avec php-common < 5.6
--> Résolution des dépendances terminée
Erreur : php56w-common conflicts with php-common-5.5.38-7.el6.remi.x86_64
Vous pouvez essayer d'utiliser --skip-broken pour contourner le problème
 Vous pouvez essayer d'exécuter : rpm -Va --nofiles --nodigest

Я попробовал параметр --skip-broken, но получаю:

--> Lancement de la transaction de test
---> Package php-xml.x86_64 0:5.5.38-7.el6.remi will be installé
--> Traitement de la dépendance : php-common(x86-64) = 5.5.38-7.el6.remi pour le paquet : php-xml-5.5.38-7.el6.remi.x86_64
--> Lancement de la transaction de test
---> Package php-common.x86_64 0:5.5.38-7.el6.remi will be installé
--> Traitement de la dépendance : php-pecl-jsonc(x86-64) pour le paquet : php-common-5.5.38-7.el6.remi.x86_64
--> Lancement de la transaction de test
---> Package php-pecl-jsonc.x86_64 0:1.3.10-2.el6.remi.5.5 will be installé
--> Traitement du conflit : php56w-common-5.6.31-2.w6.x86_64 entre en conflit avec php-common < 5.6

Paquets omis en raison de problèmes de dépendances :
php-common-5.5.38-7.el6.remi.x86_64 depuis remi-php55
php-pecl-jsonc-1.3.10-2.el6.remi.5.5.x86_64 depuis remi-php55
php-xml-5.5.38-7.el6.remi.x86_64 depuis remi-php55

Затем я попробовал rpm -Va --nofiles --nodigest, а затем снова предыдущую команду, но все еще не могу решить проблему. Спасибо за любую помощь !

ОБНОВЛЕНИЕ: мне удалось получить владельца репозитория remi https://rpms.remirepo.net/wizard/, есть конфигуратор, я выбрал версию php, и в нем изложены шаги для достижения желаемого, но, к сожалению, у меня было это сообщение:

Erreur du contrôle de transaction :
file /usr/lib64/mysql/libmysqlclient.so.16.0.0 from install of mysql-community-libs-compat-5.6.38-2.el6.x86_64 conflicts with file from package compat-mysql51-5.1.54-1.el6.remi.x86_64
file /usr/lib64/mysql/libmysqlclient_r.so.16.0.0 from install of mysql-community-libs-compat-5.6.38-2.el6.x86_64 conflicts with file from package compat-mysql51-5.1.54-1.el6.remi.x86_64

Я пытаюсь решить эту проблему сейчас на своем форуме.

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

Я думаю, вам нужно удалить пакеты, которые были установлены с помощью webtatic, а не просто удалить репо. В частности, похоже, что php56w-common взят из этого репо и является источником ваших проблем. Вы захотите установить PHP 5.6 из remi-php56 и придерживаться одной сторонней экосистемы.