[php] PDO.so manquant

Applications, problèmes de configuration réseau
Kisis
newbie
Messages : 5
Inscription : mer. 07 mars 2018, 18:30

[php] PDO.so manquant

Message par Kisis »

Salut tout le monde !

je viens vous voir car depuis peu, j'ai un petit soucis.
J'utilise php pour des frameworks tel symfony pour mes études, et depuis le début je galère car j'ai à faire à pleins de bugs chelou (le routage marche pas, etc, etc.). Mais bon, c'est pas ça mon soucis, mon soucis c'est que composer m'averti que php n'arrive pas à initiliaser PDO car il me manque la librairie pdo.so (contenue dans /usr/lib/php/modules). Et, en effet ! j'ai pas cette librairie D: Voici le message d'erreur complet :

Code : Tout sélectionner

[root@kisis kisis-test]# composer create-project symfony/website-skeleton
PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo.so' (tried: /usr/lib/php/modules/pdo.so (/usr/lib/php/modules/pdo.so: cannot open shared object file: No such file or directory), /usr/lib/php/modules/pdo.so.so (/usr/lib/php/modules/pdo.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
J'aimerai bien régler ce petit soucis :c
Voici mon fichier php.ini (la partie concernant les extensions externes) :

Code : Tout sélectionner

extension=bcmath
extension=bz2
extension=calendar
extension=curl
extension=dba
extension=enchant
extension=exif
extension=ftp
extension=gd
extension=gettext
extension=gmp
extension=iconv
extension=imap
extension=intl
extension=sodium
extension=ldap
extension=mysqli
;extension=odbc
;zend_extension=opcache
;extension=pdo_dblib
extension=pdo_mysql
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=pspell
;extension=shmop
;extension=snmp
;extension=soap
;extension=sockets
;extension=sqlite3
;extension=sysvmsg
;extension=sysvsem
;extension=sysvshm
;extension=tidy
;extension=xmlrpc
;extension=xsl
;extension=zip
Si il vous faut d'autres pièces, je vous les enverrai.
Merci bien de votre aide ! :)
Avatar de l’utilisateur
FoolEcho
Maître du Kyudo
Messages : 10707
Inscription : dim. 15 août 2010, 11:48
Localisation : Basse-Normandie

Re: [php] PDO.so manquant

Message par FoolEcho »

Salut,

Comment as-tu installé php ? (le paquet php 7.2.6-1 comprend bien l'extension)
«The following statement is not true. The previous statement is true.» :nage:
Avatar de l’utilisateur
papajoke
Elfe
Messages : 773
Inscription : sam. 30 août 2014, 19:54

Re: [php] PDO.so manquant

Message par papajoke »

bonjour

je suis surpris, cette extension externe n'existe pas avec notre version arch ... elle est interne php -m
tu n'as pas plusieurs php.ini dont un ancien ? php --ini , faire un grep pdo sur le résultat

ps: tu nous montres un warning et non une erreur !
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Kisis
newbie
Messages : 5
Inscription : mer. 07 mars 2018, 18:30

Re: [php] PDO.so manquant

Message par Kisis »

Merci pour vos retours ! :)

Pour l'installation, j'ai bien installé php avec pacman, donc j'ai utilisé le package disponible sur le dépôt officiel de Arch.

Pour le reste, j'ai verifié et dans /etc/php/ , j'ai effectivement deux fichiers .ini, un qui se nomme php.ini et le second qui se nomme php.ini.pacnew. Je ne sais pas ce que cela signifie :c Je dois sûrement en supprimer un ?

Voici ce que le php --ini me retourne :

Code : Tout sélectionner

[root@kisis kisis-test]# php --ini
PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo.so' (tried: /usr/lib/php/modules/pdo.so (/usr/lib/php/modules/pdo.so: cannot open shared object file: No such file or directory), /usr/lib/php/modules/pdo.so.so (/usr/lib/php/modules/pdo.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP Warning:  Module 'pdo_mysql' already loaded in Unknown on line 0
Configuration File (php.ini) Path: /etc/php
Loaded Configuration File:         /etc/php/php.ini
Scan for additional .ini files in: /etc/php/conf.d
Additional .ini files parsed:      /etc/php/conf.d/pdo.ini,
/etc/php/conf.d/pdo_mysql.ini
Et voici ce que le php --ini | grep pdo me retourne :

Code : Tout sélectionner

Additional .ini files parsed:      /etc/php/conf.d/pdo.ini,
/etc/php/conf.d/pdo_mysql.ini
Aussi, je viens de me rendre compte que PHP me fait part d'un second warning (Et oui,c'est bien des warnings aha ^^) qu'il affiche juste en dessous du premier mais que je n'avais pas remarqué, je ne sais pas si il est pertinent mais le voici :

Code : Tout sélectionner

PHP Warning:  Module 'pdo_mysql' already loaded in Unknown on line 0
Merci encore !
Kisis
newbie
Messages : 5
Inscription : mer. 07 mars 2018, 18:30

Re: [php] PDO.so manquant

Message par Kisis »

J'en profite pour vous donner le contenu des fichiers de configurations pdo.ini et pdo_mysql.ini !

pdo.ini :

Code : Tout sélectionner

[root@kisis kisis-test]# cat /etc/php/conf.d/pdo.ini
extension=pdo.so
pdo_mysql.ini :

Code : Tout sélectionner

[root@kisis kisis-test]# cat /etc/php/conf.d/pdo_mysql.ini 
extension=pdo_mysql.so
Je pense que pdo_mysql.ini expliquerai le second warning de php ^^ Mais je ne sais toujours pas où est passé pdo :(
Avatar de l’utilisateur
papajoke
Elfe
Messages : 773
Inscription : sam. 30 août 2014, 19:54

Re: [php] PDO.so manquant

Message par papajoke »

c'est donc tes 2 fichiers dans /etc/php/conf.d/ qui sont à supprimer - voir si il appartiennent à un paquet ou si c'est toi qui les a créer suite à un mauvais (sous arch) tuto
cela ne va qu'effacer 2 warning et aucunement régler un problème de fonctionnement :wink:

pour le .pacnew ! sous archlinux il est courant d'en avoir, c'est à nous de les gérer manuellement - ils sont ignorés par le système (donc ici php)
normalement tu ne devrais pas avoir de php.ini.pacnew ; c'est que tu as modifié manuellement php.ini !
normalement on crée un fichier /etc/php/conf.d/php.ini avec uniquement nos changements par rapport à l'original

Kisis a écrit : dim. 27 mai 2018, 23:11 Mais je ne sais toujours pas où est passé pdo :(
Comme dit plus haut, il n'existe pas d'extension externe pdo pour php sous archlinux, elle est intégrée donc on ne charge rien puisque c'est déjà fait !
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [php] PDO.so manquant

Message par benjarobin »

Si tu n'as rien changé au niveau configuration, tu peux remettre les choses d’aplomb, via cette méthode un peu "bourrin":
Tu récupères la liste des paquets fournissant les fichiers de conf de php :

Code : Tout sélectionner

pacman -Qoq  /etc/php/php.ini*  /etc/php/conf.d/* 2>/dev/null
Tu supprimes tous ces fichiers :

Code : Tout sélectionner

rm -f /etc/php/php.ini*  /etc/php/conf.d/*
Tu réinstalles les paquets listés précédemment
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Répondre