Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
980 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  extension intl (php, symfony)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

extension intl (php, symfony)

n°2167560
_possum3D
Posté le 11-12-2012 à 15:54:43  profilanswer
 

Bonjour,
 
je suis en train d'installer mamp sur un mac avec symfony2. j'en suis à activer l'extension intl.
 
C'est apparemment une vraie galère non encore résolue, en tout cas sous mac.
 
J'ai installé macport, importé les paquets de intl, copié le intl.so du macport dans le dossier d'extensions de MAMP, ajouté la ligne dans le php.ini de MAMP, de MAMP Pro... rien n'y fait. :??:  
 
l'erreur que j'obtiens semble être lié au fait que le .so a été compilé à l'extérieur du php de mamp:

Code :
  1. PHP Warning:  PHP Startup: intl: Unable to initialize module
  2. Module compiled with module API=20090626
  3. PHP    compiled with module API=20100525


 
je suis à 2 doigts de lâcher mon mac tellement ce problème m'agace  :fou: , sachant que j'y ai déjà passé la journée.
 
Merci d'avance de vos conseils avisés :jap:  
 
Possum3D

mood
Publicité
Posté le 11-12-2012 à 15:54:43  profilanswer
 

n°2167838
Tirkyth
Posté le 13-12-2012 à 11:21:35  profilanswer
 

En réalité c'est pas vraiment Mac le problème, mais MAMP.
 
En effet, le fait que tu compiles ton extensions intl à partir de MacPorts fait qu'elle n'est pas compilé avec le même numéro module API que ton PHP fourni avec MAMP.
 
Mon conseil avisé serait que tu arrêtes d'utiliser MAMP.
 
Personnellement, j'utilise homebrew, une alternative à MacPorts.
 
Aucun problème à signaler pour installer PHP, un serveur web si nécessaire (je me sers personnellement du serveur web intégré à PHP 5.4 qui fait très bien le job), un serveur mysql, etc.
 
Si jamais t'as envie de tenter le coup : http://mxcl.github.com/homebrew/


---------------
Mon Feedback !
n°2168226
CyberDenix
Posté le 16-12-2012 à 23:11:55  profilanswer
 

En fait c'est un phénomène assez fréquent lorsque tu utilises des modules sous la forme de bibliothèques partagées (.so). Ces modules ont vraisemblablement été compilés pour une version de PHP diférente de la tienne.
 
Le mieux est de recompiler à la mano ton PHP avec les différents modules dont tu as besoin (en static, donc), surtout si t'es sur mac donc sur une base linux.
Ca te fait un PHP custom avec uniquement les modules dont tu as besoin, et de plus chargés en statique, donc plus rapides.
 

Code :
  1. PHP_VERSION='5.4'
  2. sudo mkdir -p /usr/local/src
  3. cd /usr/local/src
  4. sudo rm   -fr   php$PHP_VERSION*
  5. sudo wget -O    php$PHP_VERSION.tar.gz "http://snaps.php.net/php$PHP_VERSION-latest.tar.gz"
  6. sudo tar  -xvzf php$PHP_VERSION.tar.gz
  7. sudo rm   -fr   php$PHP_VERSION.tar.gz
  8. cd              php*
  9. sudo make clean
  10. sudo rm -fr configure autom4te.cache
  11. sudo ./buildconf --force
  12. # sudo ./configure --help List all options
  13. sudo ./configure CFLAGS='-O3 -unroll2 -march=native' \
  14.                  CXXFLAGS='-O3 -unroll2 -march=native' \
  15.                  --prefix=/usr/local/php \
  16.                  --enable-fpm \
  17.                  --disable-dba \
  18.                  --disable-short-tags \
  19.                  --disable-sysvshm \
  20.                  --enable-exif \
  21.                  --enable-ftp \
  22.                  --enable-gd-native-ttf \
  23.                  --enable-mbstring \
  24.                  --enable-soap \
  25.                  --enable-sockets \
  26.                  --enable-xmlreader \
  27.                  --with-curl \
  28.                  --with-curlwrappers \
  29.                  --with-fpm-user=www-data \
  30.                  --with-gd \
  31.                  --with-gettext \
  32.                  --with-iconv=/usr/lib/ \
  33.                  --with-mcrypt \
  34.                  --with-mysql=mysqlnd \
  35.                  --with-mysqli=mysqlnd \
  36.                  --with-openssl \
  37.                  --with-pdo-mysql=mysqlnd \
  38.                  --with-pdo-sqlite \
  39.                  --with-tidy \
  40.                  --with-zlib
  41. #--with-iconv=/usr/lib/ \
  42. #--with-apxs2=/usr/local/apache/bin/apxs \
  43. sudo make
  44. #sudo make test
  45. sudo make install


 
A toi de moduler les options (with/without/enable/disable) selon tes besoins, mais ça te fait déjà une bonne base pour commencer :)


Message édité par CyberDenix le 16-12-2012 à 23:14:54

---------------
Directeur Technique (CTO)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  extension intl (php, symfony)

 

Sujets relatifs
quelle language est écrit un firmware extension ABS....PHP ne peut charger l'extension mysql,
Duplicate content pour un même fichier avec et sans extension ?comment importer Base de données avec extension .frm
[Symfony 1.4] SFroute et $_POSTjQueryLog new debugging extension for jQuery (feedback request)
Extension google chromeSymfony 1.4 : inclure un module dans un autre
Extension pour bloquer des cookies en fonction d'un domaineSymfony : Créer des formulaires en fonction des résultats d'une requet
Plus de sujets relatifs à : extension intl (php, symfony)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR