在CentOS下安装Memcached和需要的libevent。
1. CentOS 开发环境一键安装 :)
yum groupinstall 'Development Tools'
2. 安装libevent
$ wget http://www.monkey.org/~provos/libevent-1.4.8-stable.tar.gz
$ tar xzf libevent-1.4.8-stable.tar.gz
$ cd libevent-1.4.8-stable
$ ./configure
$ make
$ make install
3. 安装memcached
$ wget http://www.danga.com/memcached/dist/memcached-1.2.6.tar.gz
$ tar xzf memcached-1.2.6.tar.gz
$ cd memcached-1.2.6
$ ./configure
$ make
$ make install
测试是否安装成功:
$ memcached -u nobody -d -m 64 -p 11211
/usr/local/bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
以下命令是查看哪个patch需要使用这个组件:
[root@tmp]# LD_DEBUG=libs memcached -v
2989: find library=libevent-1.4.so.2 [0]; searching
2989: search cache=/etc/ld.so.cache
2989: search path=/lib64/tls/x86_64:/lib64/tls:/lib64/x86_64:/lib64:/usr/lib64/tls/x86_64:/usr/lib64/tls:/usr/lib64/x86_64:/usr/lib64 (system search path)
2989: trying file=/lib64/tls/x86_64/libevent-1.4.so.2
2989: trying file=/lib64/tls/libevent-1.4.so.2
2989: trying file=/lib64/x86_64/libevent-1.4.so.2
2989: trying file=/lib64/libevent-1.4.so.2
2989: trying file=/usr/lib64/tls/x86_64/libevent-1.4.so.2
2989: trying file=/usr/lib64/tls/libevent-1.4.so.2
2989: trying file=/usr/lib64/x86_64/libevent-1.4.so.2
2989: trying file=/usr/lib64/libevent-1.4.so.2
2989:
memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory
创建硬链接:
Locate the file surely that is in /usr/local/lib and make a symbolic link
$ ln -s /usr/local/lib/libevent-1.4.so.2.1.2 /usr/lib64/libevent-1.4.so.2
完成。