Installer la librairie GD pour php5 sous Léopard, 2eme essai !

Ma première tentative a bien fonctionnée mais pose un problème assez important.

Il semble que la version de php5 fournie par Apple soit incapable de charger un module dynamiquement depuis la ligne de commande. C’est ainsi que j’interprètre l’erreur systématique que l’on a lorsque l’on lance php via le terminal après avoir suivi mon premier tutorial :

# php
dyld: NSLinkModule() error
dyld: Symbol not found: _php_sig_gif
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20060613/gd.so
Expected in: flat namespace
Trace/BPT trap

GASP !

Je me suis donc rabattu sur une solution finalement plus simple et j’espère ne pas avoir de mauvaise surprise !

J’ai simplement installé un php5 compilé par les bon soins de Marc Liyanage (fort connu dans le monde mac). Ce paquet contient la plupart des extensions utiles (dont GD) et supporte la compilation et l’ajout d’autres extensions.

Installation de PHP5 via le binaire d’entropy.ch

Il faut télécharger cette archive :
http://www2.entropy.ch/download/php5-5.2.5.leopard.release1.tar.gz.

Mise à jour : Marc Liyanage travaille actuellement à différentes releases de php5 pour Leopard. Pour trouver le dernier paquet, le plus simple est de suivre le forum d’entropy.ch.

Re mise à jour : php5 est maintenant disponible à cette adresse : http://www.entropy.ch/software/macosx/php/.

Une fois celle ci décompressée, rendez vous dans le répertoire de téléchargement via le terminal :

# sudo su
# mv php5 /usr/local/
# exit

et voilà !

Configuration d’apache et de PHP5

Là aussi c’est assez simple.

# sudo su
# cp /usr/local/php5/lib/php.ini-recommended /usr/local/php5/lib/php.ini
# exit

Il faut ensuite remplacer

LoadModule php5_module libexec/apache2/libphp5.so

par

LoadModule php5_module /usr/local/php5/libphp5.so

dans le fichier /etc/apache2/httpd.conf.

Enfin, les binaires utiles sont maintenant situés dans /usr/local/php5/bin. Pour pouvoir les utiliser facilement j’ai ajouter ces lignes suivantes dans le fichier .profile à la racine de mon répertoire :

PATH=/usr/local/php5/bin:$PATH
export PATH

J’utilise bash ; pour changer de shell par défaut – qui est tcsh sous os x – il suffit d’ouvrir le terminal et d’entrer /bin/bash dans le champs commande des préférences de l’application.

Cerise sur le gâteau !

tentez donc un :

# sudo pecl install apc

dingue non ? PEAR et PECL répondent à l’appel.

Voici le phpinfo obtenu. (1,5 Mo)

La suite dans le prochain numéro !

Publicités

15 réflexions au sujet de « Installer la librairie GD pour php5 sous Léopard, 2eme essai ! »

  1. Ping : Glagla Dot Org » Blog Archive » Installer MySQL5 sous Léopard

  2. Ping : Glagla Dot Org » Blog Archive » Installer la librairie GD pour php5 sous Léopard

  3. olivier

    Bonjour,

    merci beaucoup pour ce tutoriel!

    J’ai cependant un petit problème : je ne trouve pas le fichier .profile, dans quel répertoire est-il?

    Autre chose, où faut-il taper la dernière ligne de commande afin d’installer pear?

    Merci beaucoup!

    Répondre
  4. olivier

    Bonjour cher homonyme.

    le fichier .profile est à la racine du répertoire home de ton utilisateur. Par exemple :

    /Users/olivier

    Si ce fichier n’existe pas tu peux le créer avec n’importe quel éditeur de texte normalement.

    Pear est déjà fourni avec php5 concernant la dernière commande :

    # sudo pecl install apc

    C’est pour installer apc. On peut la taper de n’importe ou si ton .profile est bien configuré. Sinon c’est

    # sudo pecl /usr/local/php5/bin/pecl install apc

    Répondre
  5. olivier

    Merci beaucoup pour ces explications!

    Cependant, « sudo pecl install apc » et « sudo pecl /usr/local/php5/bin/pecl install apc » me donnent toute deux un « sudo: pecl: command not found ».

    Mais comme je n’en ai pas vraiment l’utilité, ce n’est pas bien grave.

    Merci!

    Répondre
  6. Ping : Glagla Dot Org » Blog Archive » Installer xdebug et KCachegrind sous Leopard

  7. Fabien MEYNARD

    Bonjour olivier 🙂
    Tout d’abord merci beaucoup pour ce tuto!
    Par contre après installation de cette version de php il peut exister quelques problèmes avec MySQL je ne sais pas si tu as testé enfin surtout je ne connais pas ta configuration 🙂

    Voici le problème : Si notre socket de mysql n’est pas /tmp/mysql.sock on ne peut plus l’utiliser après l’installation de cette version de PHP ( par defaut il semble que sous leopard php est compilé avec –with-mysql-sock=/var/mysql )

    La solution :
    On édite le /usr/local/php5/lib/php.ini et dans la section [MySQL] on remplace :
    mysql.default_socket =
    par :
    mysql.default_socket = /var/mysql/mysql.sock

    si /var/mysql.sock est notre sock, pour voir notre sock si on ne le connait, depuis un terminal :
    $ mysql
    mysql> status

    Et bien sur après on relance apache 🙂

    Répondre
  8. DESIR Daniel

    Bonjour et félicitation pour votre tuto…

    Je pense que je vais installer votre version de PHP5 car la version incluse dans Leopard me pose quelques problèmes. La fonction GregorianToJD() ne fonctionne pas, visiblement elle n’est pas compilé.
    Mais je suis un ancien Windowsien et donc je me pose des questions d’ordre pratique.
    Le fait que cliquer sur l’archive la décompresse t’elle directement dans /usr/local/php5 ou faut-il créer le repertoire, copier l’archive et la décompresser ?

    Merci d’avance de votre réponse.
    Cordialement
    Daniel

    Répondre
  9. Olivier Mansour

    @Daniel : oui, il est possible que cette fonction ne soit pas compilée. C’est tout de même étrange. Et oui, il vous faut bien décompresser ou vous voulez et déplacer le répertoire php5 dans /usr/local

    bon courage

    Répondre
  10. DESIR Daniel

    Merci pour votre réponse.

    Je compte l’installer pendant mes vacances.
    J’ai toujours préféré, même sous Windows, les installations manuelles pour Apach, PHP, Mysql…). C’est plus compliqué, mais le résultat est un meilleur contrôle de son serveur.

    @+ pour les commentaires
    Merci encore
    Daniel

    Répondre
  11. DESIR Daniel

    Bonsoir Olivier.

    L’installation c’est bien passé mais il a fallu que je modifie le php.ini dans la section (Mysql) : mysql.default_socket = /var/mysql/mysql.sock.

    Le site fonctionne ainsi correctement MAIS et oui il y à un mais. Je ne peux plus me connecter à mes base avec phpmyadmin. C’est très curieux car le site se connecte bien au bases sauf une page ?

    Merci d’avance si vous avez une idée.
    Cordialement
    Daniel

    Répondre
  12. Hugo

    Impossible de faire marcher Entropy. J’ai télécharger et installer le package. Une erreur est générée mais Entropy est quand même installé.

    J’ai suivi ce tutoriel qui fixe l’erreur et qui est censé faire marcher Entropy :

    http://stitchedeyes.com/2008/02/26/getting-entropy-php-to-play-nice-in-os-x-105-leopard/#cxomment-81

    Mais au final c’est toujours le PHP 5.2.6 natif d’Apple qui se trouve dans mon phpinfo() et non le 5.2.4 d’Entropy. Savez-vous pourquoi ?

    Répondre

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s