在CentOS 6.4上的依赖关系破坏:可以安装nodejs,但不能安装npm

我正在使用新安装的CentOS 6.4(x86-64)和EPEL库。

$ yum install nodejs ... $ node -v v0.10.5 

到目前为止,这么好,但是当我尝试安装npm ,我会得到这个错误消息:

 $ yum install npm Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * base: ftp.halifax.rwth-aachen.de * epel: mirror.fraunhofer.de * extras: centos.psw.net * updates: centos.psw.net Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package npm.noarch 0:1.2.17-5.el6 will be installed --> Processing Dependency: npm(which) < 2 for package: npm-1.2.17-5.el6.noarch --> Processing Dependency: npm(uid-number) < 1 for package: npm-1.2.17-5.el6.noarch --> Processing Dependency: npm(tar) < 0.2 for package: npm-1.2.17-5.el6.noarch --> Processing Dependency: npm(slide) < 2 for package: npm-1.2.17-5.el6.noarch --> Processing Dependency: npm(semver) < 1.2 for package: npm-1.2.17-5.el6.noarch ... (skipped) ... --> Finished Dependency Resolution Error: Package: nodejs-npmlog-0.0.2-4.el6.noarch (epel) Requires: npm(ansi) < 0.2 Error: Package: npm-1.2.17-5.el6.noarch (epel) Requires: npm(ansi) < 0.2 Error: Package: nodejs-npmlog-0.0.2-4.el6.noarch (epel) Requires: npm(ansi) >= 0.1.2 Error: Package: npm-1.2.17-5.el6.noarch (epel) Requires: npm(ansi) >= 0.1.2 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest 

完整的输出是相当大的: http : //pastebin.com/raw.php?i=Ce3ZJsEB

我该怎么办? --skip-broken解决方法似乎不是正确的解决scheme。

这是yum repolist的输出:

 Loaded plugins: fastestmirror, refresh-packagekit, security Determining fastest mirrors * base: centos.copahost.com * epel: mirror.fraunhofer.de * extras: ftp-stud.fht-esslingen.de * updates: centos.copahost.com repo id repo name status base CentOS-6 - Base 6,381 epel Extra Packages for Enterprise Linux 6 - x86_64 8,909 extras CentOS-6 - Extras 12 updates CentOS-6 - Updates 727 repolist: 16,029 

来自EPEL的包nodejs-ansinodejs-ansi-0.1.2-7.el6.noarch )被破坏。

尝试:

 wget http://kojipkgs.fedoraproject.org//packages/nodejs-ansi/0.1.2/7.el6.1/noarch/nodejs-ansi-0.1.2-7.el6.1.noarch.rpm yum --enablerepo="epel" install npm ./nodejs-ansi-0.1.2-7.el6.1.noarch.rpm 

在irc.freenode.net上build立#epel的解决scheme。

另见: http : //pastebin.com/mqFqRqUp第28行