Précédent   Forum des professionnels en informatique > PHP > Outils > Zend
Zend Le forum sur les solutions et la certification Zend. Avant de poster : FAQ Zend, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/07/2007, 16h16   #1
Invité de passage
 
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 4
Points : 4
Par défaut Update Zend Core / Linux

Bonjour,

Je viens de faire une mise à jour sous Linux de Zend Core (pour info Zend Platform est aussi installé) à l'aide de la commande :
Code :
1
2
/usr/local/Zend/Core/setup/update -g
/usr/local/Zend/Core/setup/update -a
Tout c'est bien passé.

Malheureusement, avant cette mise à jour j'avais installé PDO_SQLITE avec :
Code :
/usr/local/Zend/Core/bin/pear pecl PDO_SQLITE
Tout marchait très bien

Mais suite à la mise à jour de Zend Core, apache ne démarre plus, j'ai l'erreur suivante :
Code :
1
2
Fatal error: PDO: driver sqlite requires PDO API version 20060409; this is PDO version 20060511 in Unknown on line 0
PHP Fatal error:  Unable to start pdo_sqlite module in Unknown on line 0
J'ai pensé qu'une mise à jour de PDO_SQLITE résoudrait le problème mais pear, nécessitant le moteur php, ne veux pas s'exécuter et me renvoi la même erreur

Que puis-je faire ??

Merci pour votre aide.
jp.fox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 16h40   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Il faut mettre à jour toutes les extensions en même temps que PHP. Je ne sais pas comment tu peux le faire avec ZendCore mais c'est sans doute possible.

L'idée est d'avoir en permanence la même version pour PHP et chacune de ses extensions, donc la même date de compilation pour faire simple.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 16h47   #3
Invité de passage
 
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 4
Points : 4
Oui je comprends bien.

Mais ayant utilisé les outils de Zend Core pour installer l'extension PDO_SQLITE, je pensais que la mise à jour de Zend Core mettrait aussi à jour les extensions additionnelles.

Je trouve pas vraiment de doc à ce sujet j'avais déjà galèré pour trouver la commande /usr/local/Zend/Core/bin/pear pecl
Et je me retrouve avec cette commande qui ne marche pas car justement un module pecl n'ai pas à jour c'est balot !

Je continue de fouiller. Je pars sur la piste suivante : désactivation de PDO_SQLITE afin de pouvoir lancer "pear pecl PDO_SQLITE"...
jp.fox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 16h59   #4
Invité de passage
 
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 4
Points : 4
Voilà où j'en suis :

J'ai désactivé l'extension pdo_sqlite.so dans /usr/local/Zend/Core/etc/php.ini
ce qui permet à pear de fonctionner.

/usr/local/Zend/Core/bin/pear uninstall pecl/PDO_SQLITE -> [OK]
/usr/local/Zend/Core/bin/pear install pecl/PDO_SQLITE -> [OK]

Rajout de l'extension pdo_sqlite.so dans /usr/local/Zend/Core/etc/php.ini

Toujours le même problème :
PDO: driver sqlite requires PDO API version 20060409; this is PDO version 20060511

C'est possible que le module pecl n'existe pas encore pour la version de PDO qui vient avec PHP 5.2.3 ?
jp.fox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 17h26   #5
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
PDO est composé de 2 extensions PHP :
  • L'API PDO générique ;
  • Le pilote spécifique à une BDD.
Il faut donc mettre les 2 à jour
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 17h32   #6
Invité de passage
 
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 4
Points : 4
Tout à fait. Mais pdo fait partie de Zend Core (donc je ne gère pas sa version autrement qu'en mettant à jour Zend Core) et pdo_sqlite provient du repository pecl qui ne semble pas disposer d'une version compatible avec PDO 20060511.

C'est vraiment dommage que sqlite3 (pdo_sqlite) ne fasse pas partie de Zend Core
jp.fox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 17h46   #7
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Il faut les comprendre : valider de la sorte un pilote prend du temps, ils ont donc mis l'accent sur leurs partenaires IBM, MySQL et Oracle... Les autres suivront peut-être, mais je conçois qu'ils ne soient pas une priorité

[Edit] Par contre, rien ne t'empêche de compiler toi-même l'extension dont tu as besoin. Fais simplement attention à l'histoire de "thread-safe".
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 18h10   #8
Invité de passage
 
Inscription : juillet 2007
Messages : 8
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 8
Points : 4
Points : 4


Ca marche !

En fait, la mise à jour de Zend Core a ajouté une fonction pecl. Voici la solution pour ceux qui tombe sur ce topic :

/usr/local/Zend/Core/bin/pecl uninstall PDO_SQLITE
/usr/local/Zend/Core/bin/pecl uninstall PDO
/usr/local/Zend/Core/bin/pecl install PDO
/usr/local/Zend/Core/bin/pecl install PDO_SQLITE

Réactivation de l'extension pdo_sqlite.so dans le php.ini et hop ! ça roule.

Pour info, Yogui, /usr/local/Zend/Core/bin/pecl install ... fait ni plus ni moins une compilation.

Par contre je ne sais pas si je ne vais pas me retrouver avec un déphasage de version du même type si je souhaite activer pdo_mysql.so (juste un essai me donne un segmentation fault) mais bon, on verra quand j'en aurai besoin.

Merci Yogui pour ton aide.
jp.fox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2007, 19h56   #9
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
J'aoute cela à la FAQ, à tout hasard

__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h15.


 
 
 
 
Partenaires

Hébergement Web