Centos 6 如何解决包冲突

Yvo*_*ynh 3 yum centos6 php56

我正在尝试从 php 5.5 升级到 5.6,到目前为止我已经成功升级到 php5.6,设置了 suPHP 0.7,并添加了 php-mysql 扩展。我使用 webtatic repo 来安装 php 5.6 我在这个页面 上读到不建议在 remi 上安装 webtatic。所以我删除了 /etc/yum.conf.d/ 中的文件,以便在 repo 列表中没有 webtatic。

但是我无法为 DomDocument 安装 php-xml,一些 CMS 使用它。

我试过 :

yum install php-xml
Run Code Online (Sandbox Code Playgroud)

不工作

yum --enablerepo remi install php-xml
Run Code Online (Sandbox Code Playgroud)

它给了我这样的信息:

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
Run Code Online (Sandbox Code Playgroud)

我尝试了 --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
Run Code Online (Sandbox Code Playgroud)

然后我尝试了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
Run Code Online (Sandbox Code Playgroud)

我现在正试图在他们的论坛中解决这个问题。

Aar*_*ley 5

免责声明:我在语言障碍方面遇到了一些麻烦,但我认为结合您的英语描述已经足够了。

我认为您需要删除使用 webtatic 安装的软件包,而不仅仅是删除 repo。具体来说,看起来 php56w-common 来自该存储库并且是您麻烦的根源。您需要从 remi-php56 安装 PHP 5.6 并坚持使用第 3 方生态系统。

  • 查看向导:https://rpms.remirepo.net/wizard/ (3认同)