解决 node-gyp rebuild 问题

4,605 阅读1分钟

需求背景

  • 在部署环境时npm 下载某些包时报错
  • node-gyp rebuild || node suppress-error.js

原因

  • node-gyp 支持的python的版本是2.7-3.0(2.7亲测有效)

  • 当python版本不一致时导致安装失败

解决方案

  • 下载

  • wget www.python.org/ftp/python/…

  • 解压编译

  • tar -zxvf Python-2.7.9.tgzcd Python-2.7.9./configure --prefix=/usr/local/python-2.7.9makemake install

  • 软连接(说白了把当下的软件路径注册到系统中可以实现快捷调用)

  • ln -s /usr/local/python-2.7.9/bin/python /usr/bin/python2.7.9

  • 测试

  • python2.7.9 -V

  • 修改npm指向(因为系统中存在其他版本的python)

  • npm config set python python2.7.9

终极解决方案

  • 使用docker 环境隔离