Php – Memcached extension error in PHP

memcachememcachedpeclPHP

yesterday i migrated to Rackspace (CentOS 5.5). Everything was already configured (apache, php, mysql, memcached) and working well.

The only thing i forgot, and installed at last was the mail server (iRedMail). After that, for some reason, memcached got kind of screwed up:

[root@mail php.d]# php -v

PHP Warning:  PHP Startup: memcache: Unable to initialize module
Module compiled with module API=20050922, debug=0, thread-safety=0
PHP    compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
 in Unknown on line 0
PHP 5.2.10 (cli) (built: Nov 13 2009 11:44:05)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

I tried reinstalling memcached:

yum install memcached
yum install php-pecl-memcache
service httpd restart

But the error message kept being displayed.

I am pointing to this extension in the php.ini extension=memcache.so and memcache.so is inside /usr/lib64/php/modules (extensions directory). A friend told me to check for missing library dependencies:

[root@mail modules]# ldd -v memcache.so

linux-vdso.so.1 =>  (0x00007fff4e915000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5b90c2b000)
/lib64/ld-linux-x86-64.so.2 (0x0000003aa6800000)

Version information:
./memcache.so:
    libc.so.6 (GLIBC_2.4) => /lib64/libc.so.6
    libc.so.6 (GLIBC_2.3) => /lib64/libc.so.6
    libc.so.6 (GLIBC_2.2.5) => /lib64/libc.so.6
/lib64/libc.so.6:
    ld-linux-x86-64.so.2 (GLIBC_2.3) => /lib64/ld-linux-x86-64.so.2
    ld-linux-x86-64.so.2 (GLIBC_PRIVATE) => /lib64/ld-linux-x86-64.so.2

Does that linux-vdso.so.1 something to do with my problem? If so, how do i install it? If not, what else could be causing this behavior?

Thanks for your help.

Best Answer

If you want to get the right version on now make sure you have php-devel installed

pecl install memcache