Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I attempted to install the PDO MySQL driver onto a server with Solaris using the following commands:

$ pecl download pdo_mysql
$ tar xzf PDO_MYSQL-1.0.2.tgz
$ cd PDO_MYSQL-1.0.2
$ phpize
$ ./configure --with-pdo-mysql=/usr/local/mysql
$ make
$ make install

Whenever I restart apache using "./apachectl restart" it fails to start (I'm only assuming since it won't load any of the websites hosted on it - I receive no error messages when running the preceding command).

My extension dir is "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/" and the following line is in my php.ini file "extension=pdo_mysql.so". There is indeed a new pdo_mysql.so file generated in the extension_dir. When I comment out "extension=pdo_mysql.so", Apache starts successfully.

If I try the command pecl install pdo_mysql I get pecl/pdo_mysql is already installed and is the same as the released version 1.0.2.

What could have went wrong with my installation and where can I find error messages as to why Apache isn't starting?

UPDATE: I found my error log and found the following message:

ld.so.1: php: fatal: relocation error: file /usr/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so: symbol php_pdo_declare_long_constant: referenced symbol not found
Killed

Also, is it possibly that it's an issue that I have to have "pdo_mysql.so" in my php.ini file, but not pdo.so? PDO (not the PDO MySQL driver) is not being loaded as an extension with php.ini, but already seems to be included in my PHP installation.

Any ideas?

share|improve this question
2  
Did you check the apache error_log file ? –  radius Jun 19 '09 at 18:22
    
Indeed. I'd also bet a shiny quarter that it's a link path resolution problem. –  Sean Bright Jun 19 '09 at 18:51

1 Answer 1

up vote 0 down vote accepted

Apparently this was a known bug in the version of PHP I was using: http://pecl.php.net/bugs/bug.php?id=12141

We ended up resolving this by compiling a new version of PHP without PDO compiled in and using PECL to install the PDO drivers.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.