2009-08-06 7 views
1

J'ai installé MAMP et la PHP il est venu avec n'a pas été compilé avec ncurses . J'ai essayé d'utiliser le port pour installer ncurses et il semble qu'il existe déjà sur mon système alors maintenant je me demandais s'il y avait un moyen d'obtenir PHP pour l'utiliser sans avoir à recompiler PHP --with- ncurses.Configuration PHP déjà installé pour fonctionner avec ncurses déjà installés (MAMP)

En d'autres termes: Peut-PHP être configuré pour utiliser ncurses sans recompilation?

Répondre

6

Je suis désolé pour la réponse tardive, mais cela peut être fait assez facilement avec MAMP.

Je l'ai fait sur mon MacBook sous OS X Snow Leopard.

Votre répertoire MAMP contient le fichier tar du code source php. MAMP la version 1.8.4 livré avec php-5.2.11.tar situés ici: /Applications/MAMP/bin/php5/

  1. cd/Applications/MAMP/bin/php5/
  2. tar -xvf php-5.2.11.tar
  3. cd php-5.2.11/ext/ncurses
  4. /Applications/MAMP/bin/php5/bin/phpize
  5. ./configure --with-php-config =/Applications/MAMP/bin/php5/bin/php-config
  6. make
  7. make install

Ensuite, vous avez juste besoin d'ajouter l'extension ncurses.so au php.ini MAMP

  1. echo "extension = ncurses.so" >>/Applications/MAMP/conf/php5/php.ini
  2. php -i | grep ncurses

Cela me donne:

ncurses

ncurses support => permis

NCurses version de la bibliothèque => 5,7

Vous pouvez également faire avec l'extension PCNTL;);)

À la votre!

+0

Merci pour la réponse tardive, de toute façon. Je suis toujours intéressé à faire cela, mais le MAMP que je suis en train de tourner est livré avec PHP 5.2.6 et ne possède pas l'archive PHP .tar. Quand je vais passer à une version plus récente, je vais vérifier votre réponse. Encore merci! – Tom

+0

Les chances sont que les extensions n'ont pas changé entre 5.2.6 et 5.2.11. Il suffit de suivre la recette et voir si cela fonctionne (Très probablement, il le fait) – troelskn

+0

A travaillé pour moi comme un charme ... merci! Mes chemins vers php étaient un peu différents des vôtres mais j'en ai compris l'essentiel. – inki

1

According to the manual, ncurses doit être compilé. Certaines extensions peuvent être compilées en tant que bibliothèques partagées (dll/so) et chargées dynamiquement, mais certaines ne le peuvent pas. Il semble que ncurses ne peut pas.

Je ne sais pas grand-chose sur la structure des paquets mac, mais n'est-ce pas une installation de style bsd/ports? Dans ce cas, il suffit de rechercher le package et de le configurer + le recompiler. Edit: Je vois que mamp est une distribution binaire. Vous n'avez pas de chance alors. Je suggère que vous installiez au moins php à partir des sources. Il est très utile de pouvoir installer de nouvelles extensions, etc. Il est assez simple de compiler PHP, donc même si vous n'êtes pas complètement sûr de compiler des choses, vous devriez être capable de vous en occuper.

+0

Merci pour votre réponse perspicace et utile. – Tom

+0

Désolé, la question rouvre jusqu'à ce que je vérifie la réponse de @alexandermensa. – Tom

+0

C'est bien. Sa réponse est beaucoup plus détaillée que la mienne. – troelskn

Questions connexes