关于macOS的node-gyp rebuild error

2 分钟

在使用npm安装一些包的时候,很容易遇到关于node-gyp rebuild的error。

造成这个问题的原因,一般都是系统内缺少node-gyp的依赖库。因此,解决问题的思路就是:

  • 查看缺少什么库
  • 安装缺少的库

Google「node-gyp rebuild error」,排名比较靠前的中文内容,一般都会讲如何解决没有安装Xcode Command Line Tools的问题,比如这篇文章

如果报错的内容中,存在「gyp: No Xcode or CLT version detected!」,那就得安装Xcode CLT:

xcode-select --install

在这之后,如果继续报错,就得检查缺少什么依赖了。一般来说,在一大段报错信息的后半部分,可以找到「No package ‘xxx’ found」这样的的错误信息。

比如上图,提示缺少pixman-1,那就使用Homebrew安装pixman。

brew install pixman

一般不会这么顺利,安装缺少的依赖后,执行npm会继续报错,那就继续安装缺少的依赖。

brew install cairo
brew install pango

为了避免反复尝试,总结一下。在macOS Big Sur,解决node-gyp rebuild error的问题,至少需要安装这4个主要依赖:

  • Xcode Command Line Tools
  • pixman
  • cairo
  • pango

版权所有 © 2021 Shiau. 以商业目的使用本网站内容需获许可。非商业使用本网站内容需遵循知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议。All content is made available under the CC BY-NC-ND 4.0 for non-commercial use. Commercial use of this content is prohibited without explicit permission.

Powered by hexo with theme moderate.