web-dev-qa-db-ja.com

Centos6でパッケージの競合を解決する方法

私はphp5.5から5.6にアップグレードしようとしていますが、これまでのところ、php5.6にアップグレードし、suPHP 0.7をセットアップし、php-mysql拡張機能を追加することができました。私はwebtaticリポジトリを使用してphp5.6をインストールしました このページ レミに沿ってwebtaticを使用することはお勧めしません。そこで、リポジトリのリストにwebtaticが含まれないようにするために、/ etc/yum.conf.d /内のファイルを削除しました。

ただし、DomDocumentのphp-xmlをインストールできませんでした。一部の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を試し、次に前のコマンドをもう一度試しましたが、それでも問題を解決できません。助けてくれてありがとう!

更新:私はなんとかレミリポジトリの所有者を取得することができます 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

私は今彼らのフォーラムでこの問題を解決しようとしています。

3
Yvon Huynh

免責事項:言語の壁に少し問題がありますが、英語での説明と合わせて十分に理にかなっていると思います。

リポジトリを削除するだけでなく、webtaticでインストールされたパッケージを削除する必要があると思います。具体的には、php56w-commonはそのリポジトリからのものであり、問​​題の原因であるように見えます。 PHP 5.6をremi-php56からインストールし、1つのサードパーティエコシステムに固執することをお勧めします。

5
Aaron Copley