Search code examples
phpcentosmemcachedyumcentos6.5

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/memcached.so' - /usr/lib64/php/modules/memcached.so


I'm working with CentOS 6.5

When I'm executing this php -v

I'm getting the below message:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/memcached.so' - /usr/lib64/php/modules/memcached.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP 5.4.36 (cli) (built: Dec 19 2014 06:28:27)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

As it seems to be a memcached error, when I'm trying this

yum install memcached.x86_64 php-pecl-memcache.x86_64

I'm getting below mentioned errors:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * rpmforge: mirror.team-cymru.org
drivesrvr                                                                                                                                        | 2.2 kB     00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package memcached.x86_64 0:1.4.4-3.el6 will be installed
--> Processing Dependency: libevent-1.4.so.2()(64bit) for package: memcached-1.4.4-3.el6.x86_64
---> Package php-pecl-memcache.x86_64 0:3.0.5-4.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-memcache-3.0.5-4.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-memcache-3.0.5-4.el6.x86_64
--> Running transaction check
---> Package libevent.x86_64 0:1.4.13-4.el6 will be installed
---> Package php-pecl-memcache.x86_64 0:3.0.5-4.el6 will be installed
--> Processing Dependency: php(zend-abi) = 20090626 for package: php-pecl-memcache-3.0.5-4.el6.x86_64
--> Processing Dependency: php(api) = 20090626 for package: php-pecl-memcache-3.0.5-4.el6.x86_64
--> Finished Dependency Resolution
Error: Package: php-pecl-memcache-3.0.5-4.el6.x86_64 (base)
           Requires: php(zend-abi) = 20090626
           Installed: php-common-5.4.36-1.el6.remi.x86_64 (@remi)
               php(zend-abi) = 20100525-x86-64
           Available: php-common-5.3.3-38.el6.x86_64 (base)
               php(zend-abi) = 20090626
           Available: php-common-5.3.3-40.el6_6.x86_64 (updates)
               php(zend-abi) = 20090626
           Available: php-common-5.3.3-46.el6_6.x86_64 (updates)
               php(zend-abi) = 20090626
Error: Package: php-pecl-memcache-3.0.5-4.el6.x86_64 (base)
           Requires: php(api) = 20090626
           Installed: php-common-5.4.36-1.el6.remi.x86_64 (@remi)
               php(api) = 20100412-x86-64
           Available: php-common-5.3.3-38.el6.x86_64 (base)
               php(api) = 20090626
           Available: php-common-5.3.3-40.el6_6.x86_64 (updates)
               php(api) = 20090626
           Available: php-common-5.3.3-46.el6_6.x86_64 (updates)
               php(api) = 20090626
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Solution

  • You have installed php from "remi" repository which is not enabled by default. So you need to enable it to install additional PHP extension, with correct ABI compatibility.

    yum --enablerepo=remi install php-pecl-memcache
    

    Read the FAQ : http://blog.remirepo.net/pages/English-FAQ#enable