Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

OSX: PHP Error localhost and unable to load dynamic library

How can i fix this php error?

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/php_pdo_mysql.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/php_pdo_mysql.dll, 9): image not found in Unknown on line 0

I am on a mac/mavericks and I have made a mistake and did a sudo cp /private/etc/php.ini.default /private/etc/php.ini so now I get the error stated above when I run php -v

like image 673
cch Avatar asked Mar 13 '14 16:03

cch


2 Answers

Follow this as it worked for me...

The error coming for me was:

$ sudo php -v
# PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20121212/phalcon.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20121212/phalcon.so, 9): image not found in Unknown on line 0
# PHP 5.5.14 (cli) (built: Sep  9 2014 19:09:25) 
# Copyright (c) 1997-2014 The PHP Group
# Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies

Run this as root:

$ locate phalcon.so
# /opt/local/lib/php55/extensions/no-debug-non-zts-20121212/phalcon.so

Run this also as root:

$ cp -rp /opt/local/lib/php55/extensions/no-debug-non-zts-20121212/phalcon.so /usr/lib/php/extensions/no-debug-non-zts-20121212/

Just edit the directories as they might differ for you.

like image 134
Aditya Seth Avatar answered Oct 08 '22 03:10

Aditya Seth


Originally, I followed these step-by-step guides to set up apache, php, mysql, etc and and get my localhost working:

  1. http://brianflove.com/2013/10/23/os-x-mavericks-and-apache/
  2. http://coolestguidesontheplanet.com/install-mcrypt-php-mac-osx-10-9-mavericks-development-server/

Then, I accidentally replaced my php.ini file and got the error stated above in the question. Actually, at first I got the mcrypt missing error.

So, after fixing all of these, I had few things left to do in the php.ini file:

  1. Declared mcrypt like this: extension=mcrypt.so

  2. Uncommented the extension_dir line and added: extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20100525/"

  3. I commented out the line: extension=php_pdo_mysql.dll

  4. Done a sudo apachectl restart

Finally, everything works as is expected.

like image 42
cch Avatar answered Oct 08 '22 02:10

cch