"Good news everybody!" (no points for this pop culture reference)
I just did a fresh Centos 6 install then a yum upgrade to get to the latest and greatest everything that was installed by default.
No php is installed by default.
I enabled the atomic repo then did a yum install php php-gd php-pdo BOOM:
Code: Select all
# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite3.so' - /usr/lib64/php/modules/sqlite3.so: undefined symbol: sqlite3_stmt_readonly in Unknown on line 0
PHP 5.3.14 (cli) (built: Jun 14 2012 16:34:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
OK, so what's causing this? Lets see.....
Code: Select all
# yum remove php-pdo
(stuff gets removed)
# php -v
PHP 5.3.14 (cli) (built: Jun 14 2012 16:34:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
So, it is php-pdo's sqlite3.so, is it?
Code: Select all
#yum install php-pdo
# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite3.so' - /usr/lib64/php/modules/sqlite3.so: undefined symbol: sqlite3_stmt_readonly in Unknown on line 0
PHP 5.3.14 (cli) (built: Jun 14 2012 16:34:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
Yum. Definitely something screwy about the sqlite3.so that gets loaded when php-pdo is installed.
Now let's look at php-sqlite to see if that has any effect
Code: Select all
# yum install php-sqlite
# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite3.so' - /usr/lib64/php/modules/sqlite3.so: undefined symbol: sqlite3_stmt_readonly in Unknown on line 0
PHP 5.3.14 (cli) (built: Jun 14 2012 16:34:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
# yum remove php-pdo
# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite3.so' - /usr/lib64/php/modules/sqlite3.so: undefined symbol: sqlite3_stmt_readonly in Unknown on line 0
PHP 5.3.14 (cli) (built: Jun 14 2012 16:34:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
So the same sqlite3.so gets loaded if you have php-sqlite installed and creates the same error.
Therefore there's a problem with the sqlite3.so in php-pdo and php-sqlite in the 5.3.14-6 Centos 6 x86_64 rpms.
I have no explanation as to why this error does not crop up if you upgrade from 5.3.13 or earlier to 5.3.14-6
Faris.