Node.js没有链接错误

时间:2012-09-30 17:43:38

标签: node.js homebrew

我在网上搜索了一切。但我找不到错误node-0.8.8 already installed, it's just not linked的解决方案。它与路径文件问题有关吗?

8 个答案:

答案 0 :(得分:209)

按此特定顺序执行此命令列表:

sudo brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) $(brew --prefix)
brew link --overwrite node
brew postinstall node

答案 1 :(得分:47)

运行brew upgrade以将节点更新到最新版本后,运行brew doctor以查看存在哪些潜在问题。它可能会告诉您该节点已取消链接,在这种情况下,运行brew link node会将其链接。 (您可能需要先运行brew unlink node

答案 2 :(得分:27)

我今天遇到了同样的错误,它告诉我Node没有正确链接,并且还有意外的头文件。

当我尝试重新安装节点时,它告诉我它已经安装,只是没有链接。

Warning: /usr/local/include isn't writable

/usr/local/bin/node already exists. Remove it

解决方案

要解决此问题,我使用以下方式获得了所有权:

sudo chown -R `whoami` /usr/local/

然后我强制使用以下方法链接所有文件:

brew link --overwrite node

之后我用:

完成了安装后的例行程序
brew postinstall node

然后我检查节点是否已正确安装:

node -v

我收到输出v5.1.0并且它已修复:)。希望这可以帮助。

这可能不是一个完美的解决方案,因为我已经开始涉及节点和自制程序仅在10分钟前,但它为我做了工作。

答案 3 :(得分:6)

您的旧版本的Node 0.5可能没有安装Homebrew(或者Homebrew的脚本在0.5 beta版本与0.8版本之间的巨大差距(中间版本为0.6和0.7版本)中发生了变化。)

Homebrew和官方Node安装程序都尝试安装到/usr/local/bin,因此我建议您首先删除/usr/local/bin/node/usr/local/bin/npm/usr/local/lib/node,然后重试。

答案 4 :(得分:3)

hardcorepunk的答案奏效了。但是,我们不能再在High Sierra中加入/usr/local了。因此,按以下顺序执行命令:

sudo brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) $(brew --prefix)/*
brew link --overwrite node
brew postinstall node

答案 5 :(得分:1)

要链接节点,请运行以下命令:

brew link homebrew/versions/node<version no>

要检查是否已正确安装,请运行:

node -v

如果节点将正确链接,它将不会通过任何错误,并将打印节点版本。你可以从here阅读关于它的很好的解释。

答案 6 :(得分:0)

对于线路做了这个工作:

'#filterlist_v' + i + ' .current'

强制链接并覆盖所有冲突的文件:

答案 7 :(得分:-2)

您可以更改文件"/usr/local/bin/node"的权限,例如"chmod +w /usr/local/bin/node",以使其可写。