Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

php GD library error in ubuntu

Tags:

php

ubuntu

I am using ubuntu 11.04 and when I am opening terminal and typing php -a it is showing some error like this

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/gd.so' - /usr/lib/php5/20090626/gd.so: cannot open shared object file: No such file or directory in Unknown on line 0

I think there is some problem with GD library.Is there any option to solve it?

like image 265
NewUser Avatar asked May 27 '11 06:05

NewUser


3 Answers

Yeah. Just try:

sudo apt-get install php5-gd 

You probably will have to remove the offending line in your php.ini, either in php.ini or in /etc/php5/conf.d/gd.ini maybe.

like image 92
stefgosselin Avatar answered Sep 22 '22 19:09

stefgosselin


Probably something like

sudo apt-get install php-gd

should do it, if not try

apt-cache search php | grep gd
like image 22
vickirk Avatar answered Sep 22 '22 19:09

vickirk


For me the solution was:

locate --regex /mcrypt[.]so\$ /gd[.]so\$ /suhosin[.]so\$ /pdo_mysql.so\$ /pdo[.]so /mysqli[.]so\$ '/php5/.*/mysql[.]so$'

Which returned the location of all the libraries that my php5 install was having trouble finding:

/usr/lib/php5/20090626+lfs/gd.so
/usr/lib/php5/20090626+lfs/mcrypt.so
/usr/lib/php5/20090626+lfs/mysql.so
/usr/lib/php5/20090626+lfs/mysqli.so
/usr/lib/php5/20090626+lfs/pdo.so
/usr/lib/php5/20090626+lfs/pdo_mysql.so

I was a little worried that these look they might be old versions, but I used their paths anyway. Stefgosselin identified the location of the ini files, /etc/php5/conf.d/. I modified them all. The command below will modify all of the *.ini files there, so make sure all of yours really need modifying. Obviously you need to use the target path you discovered with the locate command in place of mine, /usr/lib/php5/20090626+lfs/:

 sudo sed -ri -e "s|^(extension=)(\w{2,10}[.]so)$|\1/usr/lib/php5/20090626+lfs/\2|g" /etc/php5/conf.d/*.ini

Before finding this solution I tried several apt-get purge and apt-get reinstall commands without luck. I'm not sure, but my problem may have originated with installation of zend from source or phpmyadmin with aptitude. It never caused any php errors, just the annoying warning you mentioned. Finally php5 can launch without errors:

php5 --version

gives ...

PHP 5.3.5-1ubuntu7.2 with Suhosin-Patch (cli) (built: May  2 2011 23:18:30)  Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH
like image 20
hobs Avatar answered Sep 21 '22 19:09

hobs