Mac安装node遇到的问题记录

本文记录了在Mac上安装node时遇到的Homebrew自动更新、文件权限问题及npm与node版本不匹配的解决步骤。包括如何暂停Homebrew更新,修改/usr/local文件夹权限,关闭Mac的Rootless机制,以及处理npm与node版本冲突的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、

使用brew安装node时遇到Homebrew自动更新:可使用control+c暂时停止更新(关闭自动更新请参考其他教程)

2、

@deMacBook-Pro ~ % node -v
zsh: command not found: node
@deMacBook-Pro ~ % brew install nodejs
Updating Homebrew...
^CWarning: node 15.1.0 is already installed, it's just not linked
You can use `brew link node` to link this version.
@adeMacBook-Pro ~ % brew link node
Linking /usr/local/Cellar/node/15.1.0... 
Error: Could not symlink include/node/common.gypi
Target /usr/local/include/node/common.gypi
already exists. You may want to remove it:
  rm '/usr/local/include/node/common.gypi'

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite --dry-run node
@deMacBook-Pro ~ % rm /usr/local/include/node/common.gypi

根据提示使用rm移除或overwrite

3、

rm: /usr/local/include/node/common.gypi: Permission denied
参考:Mac系统下 /usr/local 文件夹权限问题 解决方法

(1)
首先:修改文件夹权限sudo chown -R $(whoami) /usr/local/

(2)
如果失败了,提示“Operation not permitted”或其他权限不足,则需要关闭Rootless

(Rootless是苹果从 OS X El Capitan 10.11 系统开始使用了 Rootless 机制,系统默认将会锁定
/system、/sbin、/usr 这三个目录。用户要获取这三个目录的写权限,需要关闭Rootless)

重启 Mac;
开机时后按下 Command+R,进入恢复模式。
在上面的菜单实用工具中找到并打开 Terminal,输入如下命令:

csrutil disable

(3)
启MAC,正常进入系统,此时已经可以给/system、/sbin、/usr 者几个目录进行权限更改。
打开 Terminal ,输入如下命令:

sudo chown -R $(whoami) /usr/local/

(4)
注意:用完后,记得修改回来:

csrutil enable

4、

npm与node版本不匹配

npm does not support Node.js v15.1.0
You should probably upgrade to a newer version of node as we
can't make any promises that npm will work with this version.
You can find the latest version at https://nodejs.org/
8.3.2

参考该文章
手动在/usr/local/lib/node_modules删除npm文件夹
在终端输入brew uninstall --force node删除node
再重新安装nodebrew reinstall node

最后输入

node -v
npm -v

不报错即安装成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值