Comment installer L'extension PHP intl sur CentOS?

Je ne sais pratiquement rien sur l'installation de paquets. J'ai réussi à installer Zend Framework 1 avec yum par suite d'une très spécifiques tutoriel.

maintenant j'ai besoin de L'extension intl de PHP et je ne peux pas trouver comment l'installer.

j'ai fait

yum list php*intl

et vu qu'il y en avait un Disponible. Alors j'ai fait

yum install php-intl

et a reçu le message d'erreur suivant:

Error: Package: php-intl-5.3.3-14.el6_3.x86_64 (updates)
       Requires: php-common = 5.3.3-14.el6_3
       Installed: php-common-5.3.17-2.el6.remi.x86_64 (@remi)
           php-common = 5.3.17-2.el6.remi
       Available: php-common-5.3.3-3.el6_2.8.x86_64 (base)
           php-common = 5.3.3-3.el6_2.8
       Available: php-common-5.3.3-14.el6_3.x86_64 (updates)
           php-common = 5.3.3-14.el6_3
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Je n'ai pas essayé les suggestions mentionnées dans le message parce que je ne savais pas ce qu'ils feraient et j'ai peur de casser quelque chose. C'est une machine de production et je n'ai pas d'autre machine pour tester. J'ai essayé de trouver un rpm pour télécharger la même version que mon PHP, mais pas eu de chance.

que font ces deux suggestions et sont-elles sûres à essayer? Que puis-je faire d'autre pour installer l'extension intl?

21
demandé sur toxalot 2013-02-04 07:34:17

4 réponses

comme vous avez php-commom depuis les dépôts remi, vous devez aussi obtenir php-intl depuis remi.

ajouter --enable-repo option comme suit:

yum --enablerepo=remi install php-intl
22
répondu Carlos Romero López 2014-02-22 23:56:14

si vous avez une version PHP supérieure comme 5.6, vous devez activer à la fois remi et remi-php56 repos pour installer toutes les dépendances supplémentaires:

yum --enablerepo=remi,remi-php56 install php-intl
8
répondu Christos Lytras 2015-07-06 09:29:27

j'ai installé avec succès INTL via pecl à l'aide des étapes suivantes.

1) Installer icu & libs:

yum -y install icu libicu libicu-devel

2) php-devel package et phpize:

yum -y install php-devel phpize

3) et, bien sûr, gcc:

yum -y install gcc gcc-cpp gcc-c++

ça marche pour moi.ma version php est 5.6.12

2
répondu Faisal 2015-09-08 10:48:45

Yum envoie une erreur parce que nous essayons de mettre à jour plusieurs paquets vers des versions qui sont en conflit. Votre sortie yum indique que php-intl nécessite une version spécifique du php-common. Suppression de toute la camelote:

Requires 5.3.3-14
Installed 5.3.17-2
Available 1st Option: 5.3.3-3
Available 2nd Option: 5.3.3-14

cela nous indique que vous avez déjà installé une version plus récente de php-common (5.3.17-2) Que ne le permet php-intl.

je pense que vous avez deux options. (En tant que nouveau moi-même, Je ne tenterais pas ces sans pratiquer dans un environnement dev.)

1) Supprimer les paquets remi

citant une question similaire sur Super User. "Essayez de supprimer tous les paquets Rémi php, de désactiver le dépôt Rémi et d'installer les paquets par défaut centos 6 php 5.3.3."

https://superuser.com/questions/505340/centos-6-how-to-install-php-mysql-when-php-common-remi-is-present

2) déclassement php-commun à Version 5.3.3-14

yum downgrade php-common

Je n'ai aucune idée si vous rencontreriez plus de problèmes de dépendance et que vous devriez dégrader d'autres paquets. J'ai trouvé plus de détails ici.

https://www.centos.org/modules/newbb/viewtopic.php?topic_id=40567&forum=56

D'autres sites D'échange de cheminées montrent des questions similaires.

https://serverfault.com/search?q=centos+erreur+Paquet (370 résultats)

https://unix.stackexchange.com/search?q=centos+erreur+Paquet (57 résultats)

1
répondu jtherkel 2017-04-13 12:36:31