记一次node-gyp和python版本冲突解决

28
Jul

记一次node-gyp和python版本冲突解决

很多前端框架自带的依赖会依赖早期的node-gyp
然而早期版本node-gyp有个严重问题就是不支持python3。如果客户端没有安装python2或者说python2有问题,在npm install时就会出现如下错误

gyp ERR! stack Error: Command failed: /Users/nick/anaconda3/bin/python3 -c import sys; print "%s.%s.%s" % sys.version_info[:3];

解决方法就是手动更新node-gyp到最新版

npm update -g node-gyp@latest

如果项目内依赖有node-gyp,就需要做很复杂的依赖管理去升级。

很多node-gyp的依赖时node-sass导致的,node-sass的新版已经不再依赖node-gyp,同时node-sass老版的编译与node 16.0以上的版本不兼容,如果出现一些其他的gyp错误,把node降到14、15的版本就可以解决

添加新评论