Centos
對 CentOS 6.4 的依賴關係被破壞:可以安裝 nodejs 但不能安裝 npm
我正在使用帶有 EPEL 儲存庫的全新安裝的 CentOS 6.4 (x86-64)。
$ 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
解決方法似乎不是正確的解決方案。這是輸出
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-ansi-0.1.2-7.el6.noarch ) 的包nodejs-ansi已損壞。
嘗試:
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 的#epel 的解決方案。
另請參閱:http ://pastebin.com/mqFqRqUp 第 28 行