Para quem desenvolve em ambiente NodeJs, talvez já conheça, ou tenha se deparado com o erro de node GYP mais ou menos assim:1
2
3
4
5
6
7
8
9
10
11
12gyp ERR! configure error
gyp ERR! stack Error: Python executable "python" is v3.1,
which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point
to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack at failPythonVersion (...)
gyp ERR! stack
[...]
npm ERR! error rolling back errno: 50,
npm ERR! error rolling back code: 'EPERM',
npm ERR! error rolling back path: 'path-do-projeto\\node_modules\\nome-do-modulo\\Makefile
npm ERR! not ok code 0
Ok, mas OQUE é o Node-GYP?
O Node-GYP é uma ferramenta de command line para compilar addons nativos (em C/C++) para Node.JS.
A maioria das pessoas nem sabe que ele existe, até dar pau em algum módulo :P
E por que dá o erro failPythonVersion? Como resolver?
Bom, o erro é autoexplicativo: Python executable “python” is v3.1,
which is not supported by gyp. You can pass the –python switch to point
to Python >= v2.5.0 & < 3.0.0. ou seja: o problema está na versão do Python. O GYP só aceita PIP menor que 3.0.0.
No Readme.md do projeto, vemos que a versão indicada é a 2.7. Portanto, basta ir até a página de download do Python e baixar a versão 2.7.9.
Durante a instalação, confira se ‘Add python var to PATH’ está marcado, caso use Windows.
Se você precisar do Python 3.x.x, você pode setar o caminho do 2.7, tendo os 2 instalados!
Basta rodar
1 | npm config set python caminho/do/python-2.7.9 |
E pronto :)
Espero ter ajudado.
Comments