Как использовать другую версию python во время установки NPM?



у меня есть терминальный доступ к VPS под управлением centos 5.9 и установлен python 2.4.3 по умолчанию. Я также установил python 2.7.3 с помощью этих команд: (я использовал make altinstall вместо make install)



wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz
tar -xf Python-2.7.3.tgz
cd Python-2.7.3
./configure
make
make altinstall


затем я установил узел.JS из источника через эти команды:



python2.7 ./configure
make
make install


проблема в том, когда я использую npm install и попробуйте установить узел.JS пакет, который требует python > 2.4.3 я получаю эту ошибку:



gyp ERR! configure error
gyp ERR! stack Error: Python executable "python" is v2.4.3, 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 (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:125:14)
gyp ERR! stack at /usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:114:9


как надо "передать-в Python переключиться на укажите на Python >= v2.5. 0"?

710   5  

5 ответов:

можно использовать --python опция для НПМ вот так:

npm install --python=python2.7

или установите его для использования всегда:

npm config set python python2.7

Npm, в свою очередь, передаст эту опцию node-gyp, когда это необходимо.

(примечание: Я тот, кто открыл проблему на Github, чтобы это было включено в документы, так как было так много вопросов об этом ;-) )

установите python в python2. 7 перед запуском npm install

Linux:

export PYTHON=python2.7

Windows:

set PYTHON=python2.7

для пользователей Windows что-то вроде этого должно работать:

PS C:\angular> npm install --python=C:\Python27\python.exe

Итак, вы уже нашли решение. Просто хотел поделиться тем, что было полезно для меня, так много раз;

Я создал setpy2 псевдоним, который помогает мне переключать python.

alias setpy2="mkdir -p /tmp/bin; ln -s `which python2.7` /tmp/bin/python; export PATH=/tmp/bin:$PATH"

выполнить setpy2 перед запуском npm install. Переключатель остается в силе до тех пор, пока вы не выйдете из терминала, после этого python возвращается к системному значению по умолчанию.

вы можете использовать эту технику для любой другой команды / инструмента, а также.

для быстрого одноразового использования, это работает, npm install --python="c:\python27"

Comments

    Ничего не найдено.