npm install parcel安装失败求助:node-gyp与Python版本兼容问题
解决npm安装parcel时node-gyp编译失败问题
执行npm install --save-dev parcel时安装失败,核心错误日志如下:
npm ERR! gyp ERR! stack Error: Command failed: /Users/xxxxxx/anaconda3/bin/python -c import sys; print "%s.%s.%s" % sys.version_info[:3]; npm ERR! gyp ERR! stack File "<string>", line 1 npm ERR! gyp ERR! stack import sys; print "%s.%s.%s" % sys.version_info[:3]; npm ERR! gyp ERR! stack ^ npm ERR! gyp ERR! stack SyntaxError: invalid syntax
错误原因
使用的node-gyp@3.8.0版本依赖Python 2语法,但系统默认调用的是Anaconda环境下的Python 3,两者语法不兼容导致编译失败。
解决方法
方法一:指定npm使用Python 2
- 确认系统已安装Python 2,执行
python2 --version验证 - 设置npm的Python配置:
npm config set python python2 - 重新执行安装命令:
npm install --save-dev parcel
方法二:更新node-gyp至兼容Python 3的版本
- 全局更新node-gyp:
npm install -g node-gyp@latest - 清理npm缓存:
npm cache clean --force - 删除项目的依赖文件:
rm -rf node_modules package-lock.json - 重新执行安装:
npm install --save-dev parcel
方法三:临时切换Python环境(Anaconda用户适用)
- 退出当前Anaconda环境:
conda deactivate - 确保系统默认Python版本为Python 2或兼容版本,再执行安装命令:
npm install --save-dev parcel
内容的提问来源于stack exchange,提问作者nickcoding2
相关产品推荐
相关产品推荐

