PHP中的Memcached扩展错误

昨天我迁移到了Rackspace(CentOS 5.5)。 一切都已经configuration好了(apache,php,mysql,memcached)并且运行良好。

唯一我忘了,最后安装的是邮件服务器(iRedMail)。 之后,出于某种原因,memcached被搞砸了:

[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 

我试着重新安装memcached:

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

但是错误信息一直在显示。

我指向php.ini扩展中的这个扩展= memcache.somemcache.so位于/ usr / lib64 / php / modules (扩展目录)中。 一位朋友告诉我检查缺失的库依赖关系:

[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 

请问linux-vdso.so.1与我的问题有关系吗? 如果是这样,我该如何安装? 如果不是,还有什么可能导致这种行为?

谢谢你的帮助。

如果你现在想要得到正确的版本,确保你已经安装了php-devel

 pecl install memcache 

PHP 5.2.10在默认的CentOS仓库中是不可用的,所以上面的输出表明它使用了非标准的仓库(我认为Remy提供了5.2.10)。

问题是版本库似乎只是暂时启用,所以你已经安装了memcache(可能是iRedMail的一个副作用)使用不同的存储库,所以不同版本的PHP。

尝试:
yum --enablerepo=* update memcached php-pecl-memcache

根据/etc/yum.repos.d中的configuration文件的有效性,它可能无法工作,可能需要您更加具体地了解存储库。