I am trying to run phalcon in php but it seems from the errors that it cannot load it.
PHP Warning: PHP Startup: Unable to load dynamic library 'phalcon.so' (tried: /usr/lib64/php/modules/phalcon.so (/usr/lib64/php/modules/phalcon.so: undefined symbol: __builtin_saddl_overflow), /usr/lib64/php/modules/phalcon.so.so (/usr/lib64/php/modules/phalcon.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
I've tried all the solutions that are on the web but I cant solve it.
I already add the extension=phalcon.so in php.ini and also made a file zzzzz.ini which contains the same extension but it does not work.
Those are the solutions that I found on the web.
Can someone else help me to solve my problem ?
Thanks in advance
Edit 1
GCC Version: gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)
I had the same problem, i resolved by upgrading GCC to >= 5.0 then recompiled Phalcon. For centOS 7
sudo yum install -y yum-utils centos-release-scl;
sudo yum -y --enablerepo=centos-sclo-rh-testing install devtoolset-7-gcc;
echo "source /opt/rh/devtoolset-7/enable" | sudo tee -a /etc/profile;
source /opt/rh/devtoolset-7/enable;
gcc --version;
I recently installed EHCP with all the necessary packages and now everytime I try to run my laravel project by typing php artisan serve, I get the following error:
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php/20151012/mysql.so' - /usr/lib/php/20151012/mysql.so:
cannot open shared object file: No such file or directory in Unknown
on line 0
Please help, thank you.
Do you have the mysql extension installed? If not, you may need to install it.
apt-get install php-mysql
In ubuntu 16.04 and above (as I can remember), this will install the module for PHP7 by default. So you need to check your php version and install the relevant one.
Ex: apt-get install php5.6-mysql
Then check you have the module installed by running:
php -m | grep mysql
Hope it helps!
litingjun#litingjun-All-Series:/etc/php5/cli/conf.d$ php -a
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20121212/gd.so' - /usr/lib/php5/20121212/gd.so: undefined symbol: gdImageCreateFromGd2Part in Unknown on line 0
litingjun#litingjun-All-Series:/etc/php5/cli/conf.d$ ls /usr/lib/php5/20121212/gd.so
/usr/lib/php5/20121212/gd.so
I've tried reinstalling gd using sudo apt-get install php5-gd but still not work.
My PHP version: 5.5.9-1ubuntu4.11
I need gd.
Thanks
I've reinstalled my OS and problem's gone.
When I tried to run PHP composer command : php -c /etc/php5/apache2/php.ini ~/composer.phar
install, the composer returns the following message and I cannot run the laravel framework.
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php5/20121212/pdo_mysql.so' - /usr/lib/php5/20121212/pdo_mysql.so: undefined
symbol: pdo_parse_params in Unknown on line 0
Script php artisan clear-compiled handling the post-install-cmd event returned with an error
[RuntimeException]
Error Output: PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php5/20121212/pdo_mysql.so' - /usr/lib/php5/20121212/pdo_mysql.so: undefined symbol: pdo_parse_params in Unknown on line 0
I googled, and I tried run sudo apt-get install php5-mysql, it saids php5-mysql already the
newest. And I tried to run command sudo php5enmod pdo_mysql. But I run the php composer
again, same error happened. It seems php5 cannot find pdo_mysql. I believed it may caused by
PHP installation. I tried to remove the PHP5 mannually. So how can I make PHP find the
pdo_mysql again? Thanks
I get this warning message in my php:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite.so' - /usr/lib64/php/modules/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
How should I fix that? Where can I get this sqlite.so file?
You don't need to get it. Just remove the line referencing the shared object.
cd /etc/php5
grep -rinH sqlite .
Since PHP 5.4 sqlite is only available via PECL.
If you want to get the library, try sudo apt-get install php-sqlite or yum install php-sqlite or similar.
Two ideas: (Re-) install php-sqlite on your machine or remove the line which loads the sqlite.so. Mostly done by an extra config in /etc/php5/conf.d/
If you don't have shell access, call you system administrator and give him that error message.
The .so file was removed in Ubuntu 11.10 (bug report here), however you can still install it manually...
Download the old package: http://packages.ubuntu.com/natty-updates/php5-sqlite
Extracts sqlite.so to the required directory
Change it's ownership to root:root
you must have sure sqlite installed
goto /etc/php.d and find sqlite.ini
you must somethong like : extension=mysql.so
mysql.so must be in : /usr/lib64/php/modules/
if not you must install it
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php54/5.4.30/lib/php/extensions/no-debug-non-zts-20100525/redis.so' - dlopen(/usr/local/Cellar/php54/5.4.30/lib/php/extensions/no-debug-non-zts-20100525/redis.so, 9): image not found in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library '/usr/local/Cellar/php54/5.4.30/lib/php/extensions/no-debug-non-zts-20100525/redis.so' - dlopen(/usr/local/Cellar/php54/5.4.30/lib/php/extensions/no-debug-non-zts-20100525/redis.so, 9): image not found in Unknown on line 0
I was getting this error/warning resolved it by uninstalling and installing redis
brew uninstall php54-redis
brew install php54-redis
I had the same warning when I wanted to install the symfony/security-bundle bundle in my Symfony 4 project:
composer require symfony/security-bundle
Here the warning:
PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_sqlite' (tried: /usr/lib/php/modules/pdo_sqlite (/usr/lib/php/modules/pdo_sqlite: cannot open shared object file: No such file or directory), /usr/lib/php/modules/pdo_sqlite.so (/usr/lib/php/modules/pdo_sqlite.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
I checked my /etc/php/php.ini file and I uncommented the line extension=pdo_sqlite line. I had to install the package php-sqlite via my package manager because the file pdo_sqlite.so must be present in the /usr/lib/php/modules/ folder:
pacman -S php-sqlite
After, I typed again the composer command and the warning disappeared. I hope my answer can help you.