I have terminal access to a VPS running CentOS 5.9 and default Python 2.4.3 installed. I also installed Python 2.7.3 via these commands (I used make altinstall
instead of 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
Then I installed Node.js from source code via these commands:
python2.7 ./configure
make
make install
The problem is, when I use npm install
and try to install a Node.js package which requires Python 2.4.3 (or later), I get this error:
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
How should I "pass the --python switch to point to Python >= v2.5.0"?
You can use the --python
option to npm like so:
npm install --python=python2.7
Or set it to be used always:
npm config set python python2.7
Npm will in turn pass this option to node-gyp when needed.