2010-11-11 42 views
3

J'ai quelques problèmes avec la fonction PHP iconv, que j'ai suivie dans l'implémentation iconv. Comme le stipule le manuel, "Notez que la fonction iconv sur certains systèmes peut ne pas fonctionner comme vous le souhaitez, dans ce cas, ce serait une bonne idée d'installer la bibliothèque GNU libiconv." http://uk3.php.net/manual/en/intro.iconv.phpPHP ICONV glibc à libiconv sur CentOS 5.5

J'ai téléchargé la bibliothèque libiconv de http://www.gnu.org/software/libiconv/ et installé sans aucun problème en utilisant:

$ ./configure --prefix=/usr/local 
$ make 
$ make install

Mon problème est maintenant de savoir comment relier cette installation à PHP? De ce que j'ai lu j'ai besoin de recompiler PHP avec

--with-iconv-dir=/usr/local/

mais comment faire cela sur CentOS? J'ai installé php avec

yum install php.x86_64

J'ai essayé yum réinstaller php mais quand je service httpd restart mon phpinfo lit le même, glibc.

Existe-t-il une meilleure façon d'installer libiconv sur CentOS? Sinon comment puis-je obtenir PHP en utilisant cette installation sans déranger miam?

Un grand merci à l'avance

Répondre

1

Vous devez recompiler manuellement l'extension php iconv (dans le php-x.y.z/ext/iconv/ sous-répertoire) après le changement manuel du script de configuration à la force pour sélectionner GNU libiconv au lieu de iconv de glibc. Voir mon answer pour la question Stack similaire.

+0

Je viens de regarder votre autre réponse et il semble sur place. Je vais essayer de trouver du temps cette semaine pour essayer. Merci pour ça! –

2

php compilé à partir des sources semble être la façon

php -m > /tmp/php.modules à la liste des modules compilés pour php

sauvegarde de votre php.ini actuelle

yum uninstall php

télécharger le php et baser sur votre module existant + Iconv - presque toutes les étapes ont été détaillées ici: http://www.php.net/manual/en/install.unix.apache2.php#90478 (sauf conseillerai jamais u php.ini de sauvegarde)

+0

Merci ajreal. J'espérais qu'il y aurait une méthode plus simple en un clic, mais je compilerai à partir de la source. –

+0

Peter, quelles options avez-vous utilisé lorsque vous avez compilé avec iconv? Après avoir compilé PHP depuis la source, il semble que glibc soit toujours la version iconv que PHP utilise. – Randell