Red Hat Enterprise 5 server 上安装 memcached 的问题记录

国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html
内部邀请码:C8E245J (不写邀请码,没有现金送)
国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。 
------------------------------------------------------------------------------------------------------------------------------------------------------------------

此文档同步发布于: http://blog.csdn.net/alonesword/

Red Hat Enterprise 5  server 上安装 memcached 的问题记录

参考的安装文档:http://www.linuxsir.org/main/node/184

1           所有工具的安装,选择具有管理员权限的用户进行

2           工具的版本:

名称

版本

下载地址

memcached

1.4.13

http://memcached.org/

libevent

2.0.16-stable

https://github.com/downloads/libevent/libevent/libevent-2.0.16-stable.tar.gz

3           遇到的问题及解决方法

           i.              安装memcache 时提示需要安装libevent

直接G一下,下载 2.0.16-stable,依次执行

tar zxvf libevent-2.0.16-stable.tar.gz

cd ./libevent-2.0.16-stable

./configure

make install clean

经过上述步骤,根据执行的结果得知libevent 被安装到: /usr/local/lib 中

【说明】也可通过 ls –aR | grep libevent 找到路径地址。结果如下,表示已安装了

 

         ii.              执行memcached 的make 时,出现错误:

error: `IOV_MAX' undeclared (first use in this function)

网上搜索到的答案,忘记地址了,>_< 汗一个

【原因】 memcache.c 对该系统 red hat enterprise 5 server 的侦测错误,导致宏 IOV_MAX 未定义

【解决方法】 手动修改文件 memcache.c,定义 IOV_MAX

【实施步骤】 用vi打开memcache.c 文件,注释掉57及59行,修改结果如下

【技巧】打开vi后,可用set nu 打开行号标签

        iii.              启动memcached 时,提示找不到libevent 库位置

memcached: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

【原因】使用 LD_DEBUG=libs /usr/local/bin/memcached –v 可查看库文件的搜索路径,memcached 要求libevnet 的路径是 /usr/lib/libevent.2.0.so.5,

而libevent 实际安装路径为:/usr/local/bin/libevent.2.0.so.5

【解决方法】想办法让memcached 找到libevent的安装路径

【操作方法】根据网上的说法,找到几种方法,最简单的是软连接

1、  建立软连接

#ln -s /usr/local/lib/libevent.2.0.so.5 /usr/lib/libevent.2.0.so.5

缺点:只对当前用户有效

2、  建立 memcached.conf 文件并注册

【说明】此方法并未测试,网上见到的

    步骤1:cd /etc/ld.so.conf.d。

步骤2:vi memcached.conf 这里的memcached.conf是不存在的,是我自己创建的。

步骤3:在memcached.conf理添加一行 /usr/local/lib表示libevent-1.4.so.2的路径。

步骤4:ldconfig表示向系统注册配置文件

Ok,解决掉上述问题后,memcached 即可启动了

enjoy it!

原文地址:https://www.cnblogs.com/AloneSword/p/2338642.html