Installer l’extension MongoDB dans PHP 5.4.4 (MAMP) sous Mac OS X 10.8 (Mountain Lion)

J’utilise l’extension MongoDB sous PHP 5.2.17 et PHP 5.3.14 avec MAMP depuis déjà un certain temps. Hier, j’ai eu besoin de l’installer sous PHP 5.4.4 toujours avec MAMP. J’ai donc copié le fichier mongo.so dans avec les autres extensions, ajouter la ligne « extension=mongo.so » dans le fichier php.ini et redémarré Apache. Et là, surprise, la page phpinfo de MAMP m’indique que l’extension ne fonctionne pas.

Après quelques recherche, je comprend que l’extension que j’utilise est trop ancienne et que le dois la mettre à jour.

Tentative 1: récupérer sur Github (https://github.com/mongodb/mongo-php-driver/downloads) une version compilée. Pas de chance la version la plus récente indique PHP 5.2

Tentative 2: récupérer les sources sur Github (https://github.com/mongodb/mongo-php-driver) et suivre la procédure indiqué dans le readme. Echec également car l’utilitaire phpize utilisé sur mon Mac est /usr/bin/phpize qui est une version 5.3. Le fichier mongo.so produit ne fonctionne pas.

Tentative 3: après encore quelques recherches, je trouve cet article « How to Setup PHP 5.4 with PEAR, PECL, PHPUnit on Mac OS X 10.8 Mountain Lion With MAMP / MAMP Pro » qui fonctionne.  

Pour faire court, la solution consiste en la recompilation de PHP pour installer sous Mac OS la version 5.4.4 et disposer de PECL afin de récupérer la bonne version de l’extension MongoDB. Cette installation n’empêche pas avec MAMP de rebasculer sous une ancienne version de PHP au besoin donc ce n’est pas un problème.

Le problème dans la procedure indiquée, c’est que PECL m’indique qu’il n’y a pas de package mongo disponible. Cela aurait été trop beau. Qu’à cela ne tienne, comme ma version de PHP est officiellement une 5.4.4, je peux reprendre la tentative 2 qui fonctionne. Enfin !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *