Undefined Symbol pdo_dbh_ce
I try to install Slim in my upgraded Ubuntu install. I got the error pdo_dbh_ce when I try to load the server.
php -S localhost:8080 -t public
Additional error information /usr/lib/php/20240924/pdo_sqlite: cannot open shared object file: No such file or directory
The pdo_sqlite.so is in that folder. How is possible to resolve the issue?
It looks like the path to the sqlite file is not correct, or the sqlite file does not exists where it is expected.
Daniel
No, the file was there, and the path was correct; there is something related to the configuration, the Ubuntu 25.04 is still in Beta.
I erase PHP with a --purge and reinstall it, the issue still was there after that.
I erase the slim project folder, and start again the installer process by using this time
composer require slim/slim:“4:*”
follow by
composer require slim/psr7
The installation following
composer create-project slim/slim-skeleton my_project
was the original path that I followed, where I found the issue.
Perhaps there is something related to Ubuntu 25.04 Beta/PHP8.4.5 that still needs some debug, I don’t know.
The important point for me, is that now everything is working.
Thanks for your answer.
Does it work now ?
The error you are facing, “Undefined symbol pdo_dbh_ce,” indicates that there is some problem with the PDO extension or its dependencies in your system. It probably means that the PDO extension is either not loaded or configured correctly. The second one, stating that “pdo_sqlite.so” cannot be opened, implies there might be some problem with the path or the environment variables not properly pointing towards the shared libraries. First, make sure the PDO and SQLite extensions are enabled in your php.ini
file (look for lines such as extension=pdo.so
and extension=pdo_sqlite.so
). If the extensions are already enabled, try running sudo ldconfig
to update the linker cache, or make sure the pdo_sqlite.so
file has the proper permissions and is in a directory PHP can read. You should also verify that your PHP version is compatible with the extensions you are attempting to load. Lastly, restarting the web server or PHP after performing these modifications will assist in applying the fixes.