1

我正在尝试将 memcached 安装到 REDHAT Enterprise 5.5 x86_64

我努力了:

root@sv [~]# yum -y install memcached

然后收到以下错误

--> Running transaction check
---> Package memcached.x86_64 0:1.4.5-1.el5.rf set to be updated
--> Processing Dependency: perl(AnyEvent) for package: memcached
--> Processing Dependency: perl(AnyEvent::Socket) for package: memcached
--> Processing Dependency: perl(AnyEvent::Handle) for package: memcached
--> Processing Dependency: perl(YAML) for package: memcached
--> Processing Dependency: perl(Term::ReadKey) for package: memcached
--> Processing Dependency: libevent-1.1a.so.1()(64bit) for package: memcached
--> Running transaction check
---> Package compat-libevent-11a.x86_64 0:3.2.1-1.el5.rf set to be updated
---> Package memcached.x86_64 0:1.4.5-1.el5.rf set to be updated
--> Processing Dependency: perl(AnyEvent) for package: memcached
--> Processing Dependency: perl(AnyEvent::Socket) for package: memcached
--> Processing Dependency: perl(AnyEvent::Handle) for package: memcached
--> Processing Dependency: perl(YAML) for package: memcached
--> Processing Dependency: perl(Term::ReadKey) for package: memcached
--> Finished Dependency Resolution
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent::Socket) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent::Handle) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(YAML) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(Term::ReadKey) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent::Socket) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent::Handle) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(YAML) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(Term::ReadKey) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest

这是否意味着我需要 Term::ReadKey、AnyEvent::Socket、AnyEvent 等才能安装 memcached?当我尝试安装“AnyEvent”时,这也给了我一些问题。

root@sv [~]# rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/perl-AnyEvent-5.240-1.el5.rf.noarch.rpm
Retrieving http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/perl-AnyEvent-5.240-1.el5.rf.noarch.rpm
error: Failed dependencies:
        perl(EV) >= 3.05 is needed by perl-AnyEvent-5.240-1.el5.rf.noarch
        perl(Guard) >= 1.02 is needed by perl-AnyEvent-5.240-1.el5.rf.noarch
        perl(JSON) >= 2.09 is needed by perl-AnyEvent-5.240-1.el5.rf.noarch
        perl(JSON::XS) >= 2.2 is needed by perl-AnyEvent-5.240-1.el5.rf.noarch
        perl(Net::SSLeay) >= 1.33 is needed by perl-AnyEvent-5.240-1.el5.rf.noarch

更新!!!!01-19-2011

用户:Stephan Kristyn 建议更新一些 perl 模块,但这对我来说并不奏效。在我更新了两个模块之后,我再次运行了 yum,结果如下。

root@sv [~]# yum -y install memcached
Loaded plugins: rhnplugin
rpmforge                                                            | 1.1 kB     00:00     
Excluding Packages in global exclude list
Finished
Setting up Install Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
---> Package memcached.x86_64 0:1.4.5-1.el5.rf set to be updated
--> Processing Dependency: perl(AnyEvent) for package: memcached
--> Processing Dependency: perl(AnyEvent::Socket) for package: memcached
--> Processing Dependency: perl(AnyEvent::Handle) for package: memcached
--> Processing Dependency: perl(YAML) for package: memcached
--> Processing Dependency: perl(Term::ReadKey) for package: memcached
--> Processing Dependency: libevent-1.1a.so.1()(64bit) for package: memcached
--> Running transaction check
---> Package compat-libevent-11a.x86_64 0:3.2.1-1.el5.rf set to be updated
---> Package memcached.x86_64 0:1.4.5-1.el5.rf set to be updated
--> Processing Dependency: perl(AnyEvent) for package: memcached
--> Processing Dependency: perl(AnyEvent::Socket) for package: memcached
--> Processing Dependency: perl(AnyEvent::Handle) for package: memcached
--> Processing Dependency: perl(YAML) for package: memcached
--> Processing Dependency: perl(Term::ReadKey) for package: memcached
--> Finished Dependency Resolution
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent::Socket) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(AnyEvent::Handle) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(YAML) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
memcached-1.4.5-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: perl(Term::ReadKey) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent::Socket) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(AnyEvent::Handle) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(YAML) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: perl(Term::ReadKey) is needed by package memcached-1.4.5-1.el5.rf.x86_64 (rpmforge)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest
4

3 回答 3

5

就我而言,在 CentOS 5.5 x86_64 上,我取得了以下成功:

sudo yum --enablerepo=rpmforge,rpmforge-extras install memcached

显然,您需要RPMForge才能使其工作。(因为 yum 日志提到了 rpmforge,@Maca 似乎已经有了。)

问题是所需版本的 perl-Net-SSLeay 包含在rpmforge-extras存储库中,默认情况下该存储库是禁用的。

虽然与问题中的问题不同,但可能适用相同的原因和解决方案。

于 2011-05-03T07:45:10.423 回答
1

CentOS 的 yum 存储库没有 memcached 所需的最新 perl-Net-SSLeay 和 perl-IO-Socket-SSL 软件包。我做了一些谷歌搜索,发现其他人也遇到了类似的问题,但没有解决。这是简单的修复:

首先,删除旧的 perl 模块。然后下载并安装 memcached 所需的较新版本。

rpm-e perl-Net-SSLeay-1.30-4.fc6
rpm -e perl-IO-Socket-SSL-1.01-1.fc6
wget http://packages.sw.be/perl-Net-SSLeay/perl-Net-SSLeay-1.36-1.el5.rfx.i386.rpm
wget http://packages.sw.be/perl-Net-SSLeay/perl-Net-SSLeay-1.36-1.el5.rfx.x86_64.rpm
wget http://packages.sw.be/perl-IO-Socket-SSL/perl-IO-Socket-SSL-1.34-1.el5.rfx.noarch.rpm
rpm -i perl-Net-SSLeay-1.36-1.el5.rfx.x86_64.rpm
rpm -i perl-Net-SSLeay-1.36-1.el5.rfx.i386.rpm
rpm -i perl-IO-Socket-SSL-1.34-1.el5.rfx.noarch.rpm

现在您应该能够安装 memcached 而不会出错。

yum -y 安装内存缓存

学分和更多信息: http: //mattdanger.net/2010/12/perl-net-ssleay-dependency-error-when-installing-memcached-with-yum/

于 2011-01-08T23:38:31.487 回答
0

您的虚拟化工具或控制面板在 yum 配置中禁用了某些软件包;请咨询该工具的开发人员以了解如何解决此问题。

于 2010-12-12T02:09:10.133 回答