Node.js没有链接错误

Ali*_*Ali 63 homebrew node.js

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

675*_*367 216

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

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
Run Code Online (Sandbox Code Playgroud)

  • 不再支持在 sudo 模式下运行 brew (3认同)

小智 47

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

  • 我一直收到这个错误---无法symlink包含/ node/android-ifaddrs.h/usr/local/include/node是不可写的---任何想法? (9认同)
  • @SleepsOnNewspapers http://developpeers.com/blogs/fix-for-homebrew-permission-denied-issues (2认同)

NSN*_*oob 28

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

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

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

/usr/local/bin/node already exists. Remove it
Run Code Online (Sandbox Code Playgroud)

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

sudo chown -R `whoami` /usr/local/
Run Code Online (Sandbox Code Playgroud)

然后我通过使用强制链接所有文件:

brew link --overwrite node
Run Code Online (Sandbox Code Playgroud)

之后我做了安装后例程:

brew postinstall node
Run Code Online (Sandbox Code Playgroud)

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

node -v
Run Code Online (Sandbox Code Playgroud)

我收到输出v5.1.0,它是固定的:).希望这可以帮助.

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


小智 6

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

无论家酿和官方节点安装程序尝试安装到/usr/local/bin那么我建议你通过简单的删除开始/usr/local/bin/node,/usr/local/bin/npm/usr/local/lib/node,然后再试一次.

  • 你也应该删除模块.`rm -rf/usr/local/lib/node_modules /` (3认同)