Problème de dépendances

Fermé
sipherion Messages postés 1798 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 19 décembre 2016 - Modifié par sipherion le 17/12/2015 à 16:33
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 19 déc. 2015 à 14:17
Bonjour à tous,

J'ai l'erreur suivante dans Redhat Enterprise Linux 7 quand j'essaye d'installer ownCloud :

[root@localhost ~]# yum install owncloud
Modules complémentaires chargés : langpacks, product-id, search-disabled-repos,
: subscription-manager
Résolution des dépendances
--> Lancement de la transaction de test
---> Le paquet owncloud.noarch 0:8.2.1-1.1 sera installé
--> Traitement de la dépendance : owncloud-server = 8.2.1 pour le paquet : owncloud-8.2.1-1.1.noarch
--> Traitement de la dépendance : owncloud-config-apache = 8.2.1 pour le paquet : owncloud-8.2.1-1.1.noarch
--> Lancement de la transaction de test
---> Le paquet owncloud-config-apache.noarch 0:8.2.1-1.1 sera installé
---> Le paquet owncloud-server.noarch 0:8.2.1-1.1 sera installé
--> Traitement de la dépendance : php-ldap pour le paquet : owncloud-server-8.2.1-1.1.noarch
--> Lancement de la transaction de test
---> Le paquet php-ldap.x86_64 0:5.4.16-36.el7_1 sera installé
--> Traitement de la dépendance : php-common(x86-64) = 5.4.16-36.el7_1 pour le paquet : php-ldap-5.4.16-36.el7_1.x86_64
--> Résolution des dépendances terminée
Erreur : Paquet : php-ldap-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
Requiert : php-common(x86-64) = 5.4.16-36.el7_1
Installé  : php-common-5.4.41-1.el7.remi.x86_64 (@remi)
php-common(x86-64) = 5.4.41-1.el7.remi
Disponible : php-common-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-21.el7
Disponible : php-common-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0
Disponible : php-common-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0.1
Disponible : php-common-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0.3
Disponible : php-common-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-36.el7_1
Disponible : php54w-common-5.4.45-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.4.45-2.w7
Disponible : php55w-common-5.5.30-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.5.30-2.w7
Disponible : php56w-common-5.6.14-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.14-2.w7
Disponible : php56w-common-5.6.15-1.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.15-1.w7
Disponible : php56w-common-5.6.16-1.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.16-1.w7
Disponible : php70w-common-7.0.0-1.w7.x86_64 (webtatic)
php-common(x86-64) = 7.0.0-1.w7

yum can be configured to try to resolve such errors by temporarily enablingdisabled repos and searching for missing dependencies.To enable this functionality please set 'notify_only=0' in /etc/yum/pluginconf.d/search-disabled-repos.conf

Erreur : Paquet : php-ldap-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
Requiert : php-common(x86-64) = 5.4.16-36.el7_1
Installé  : php-common-5.4.41-1.el7.remi.x86_64 (@remi)
php-common(x86-64) = 5.4.41-1.el7.remi
Disponible : php-common-5.4.16-21.el7.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-21.el7
Disponible : php-common-5.4.16-23.el7_0.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0
Disponible : php-common-5.4.16-23.el7_0.1.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0.1
Disponible : php-common-5.4.16-23.el7_0.3.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-23.el7_0.3
Disponible : php-common-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
php-common(x86-64) = 5.4.16-36.el7_1
Disponible : php54w-common-5.4.45-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.4.45-2.w7
Disponible : php55w-common-5.5.30-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.5.30-2.w7
Disponible : php56w-common-5.6.14-2.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.14-2.w7
Disponible : php56w-common-5.6.15-1.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.15-1.w7
Disponible : php56w-common-5.6.16-1.w7.x86_64 (webtatic)
php-common(x86-64) = 5.6.16-1.w7
Disponible : php70w-common-7.0.0-1.w7.x86_64 (webtatic)
php-common(x86-64) = 7.0.0-1.w7



Oui c'est normal que je sois en root, j'essaye juste d'installer ownCloud, je n'y suis jamais sinon :)
J'ai déjà essayé
--skip-broken
, l'erreur est la même. Idem avec
rpm -Va --nofiles --nodigest
, pas de changement.
J'ai également essayé de faire les modifications de
 'notify_only=0' in /etc/yum/pluginconf.d/search-disabled-repos.conf
qui ne fait que retirer la première partie du message.
J'ai également suivi le tuto de ownCloud pour REL7 avec les réglages de dépôt et tout, mais pas de changement non plus : https://download.owncloud.org/download/repositories/production/owncloud/

Mon installation PHP est à jour, quand j'essaye de yum install php-common ou php-ldap il me dit que ces packets sont déjà à jour.

Je pense qu'il ne s'agit que d'un simple réglage, mais je ne sais pas lequel.
Merci d'avance pour votre aide :)




"Il vaut mieux savoir tout chercher que chercher à tout savoir."

1 réponse

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
17 déc. 2015 à 18:07
Le problème vient de là :

Erreur : Paquet : php-ldap-5.4.16-36.el7_1.x86_64 (rhel-7-server-rpms)
Requiert : php-common(x86-64) = 5.4.16-36.el7_1
Installé : php-common-5.4.41-1.el7.remi.x86_64 (@remi)
php-common(x86-64) = 5.4.41-1.el7.remi


Le paquet php-ldap que tu tentes d'installer requiert une version bien précise de php-common (probablement celle fourni par rhel-7-server-rpms) mais la version actuelle ne correspond pas (vraisemblablement parce qu'elle est prise d'un autre endroit). Or la version standard est antérieure, donc non proposée. Il faut donc downgrader ce paquet avec la version "standard".

Une manière de faire consiste à désactiver le dépôt non standard qui a été utilisé, désinstaller et réinstaller ce paquet.

De manière générale, mixer les dépôts n'est pas toujours une bonne idée, notamment car elle conduit à cette situation, donc je te recommande de te limiter, autant que possible, aux dépôts standards. Si un paquet te semble trop vieux dans ces dépôts, c'est peut-être que tu dois simplement migrer vers une version plus récente de ta distribution linux (ou attendre que les paquets en questions soient disponibles sur les miroirs officiels).

Bonne chance
1
sipherion Messages postés 1798 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 19 décembre 2016 285
18 déc. 2015 à 10:29
Merci pour ta réponse.
Effectivement, il semblerait que PHP vienne du dépôt "remi" mais je ne me souviens pas avoir installé quoi que ce soit en passant par ce dépôt. Je suis passé par la commande :
yum --enablerepo=remi install php-ldap

qui m'a généré correctement les dépendances nécessaires pour php-common.
Par contre, je ne sais pas trop comment gérer les dépôts dans RHEL, et surtout lesquels garder/retirer. Je ne vois pas de contre indication particulière pour le dépôt remi, mais si cela génère un conflit sur l'installation de mes applications, ce n'est peut être pas une bonne idée de le garder. Que me conseillerais-tu à ce sujet ?
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
Modifié par mamiemando le 19/12/2015 à 14:18
Mon conseil serait : n'utilise que des dépôts cohérents entre eux (remi ne semble pas cohérent avec les dépôts standard, peut-être parce qu'il considère que tu es dans une version plus récente de ta distribution).

Personnellement je recommande de n'utiliser que les dépôts officiels (autant que possible), quelle que soit la distribution. Si les mainteneurs de la distribution font bien leur travail, tu n'as pas ce genre de problème, et surtout tu n'installes que des paquets sûr.

Après, j'imagine que parfois, tu peux vouloir installer un paquet qui n'est pas disponible sur les dépôts officiels. Dans ce cas, tu peux ponctuellement activer ou désactiver des dépôts pour installer un paquet qui n'est pas fourni par les dépôts officiels. Ou mieux, tu télécharges manuellement le rpm du logiciel en question et tu l'installes avec
rpm -ivh /chemin/vers/fichier.rpm
(si des dépendances manquent, tu les installes via
yum
et tu relances ta commande
rpm
).

Est-ce que ton problème est résolu ?

Bonne chance
0