Centos6
如何解決 Centos 6 中的包衝突
我正在嘗試從 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
不工作
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 安裝的軟體包,而不僅僅是刪除 repo。具體來說,看起來 php56w-common 來自該儲存庫,並且是您麻煩的根源。您需要從 remi-php56 安裝 PHP 5.6 並堅持使用第 3 方生態系統。