web-dev-qa-db-fra.com

Impossible de trouver Python exécutable "python"

Lorsque j'installe iconv avec npm a obtenu l'erreur suivante:

[email protected] install/root/Dropbox/nodeApps/nodeApp/node_modules/iconv node-gyp rebuild

gyp ERR! configure error 
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack     at failNoPython (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:103:14)
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:42:11
gyp ERR! stack     at F (/usr/local/lib/node_modules/npm/node_modules/which/which.js:43:25)
gyp ERR! stack     at E (/usr/local/lib/node_modules/npm/node_modules/which/which.js:46:29)
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/which/which.js:57:16
gyp ERR! stack     at Object.oncomplete (fs.js:107:15)
gyp ERR! System Linux 3.8.0-19-generic
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/Dropbox/nodeApps/nodeApp/node_modules/iconv
gyp ERR! node -v v0.10.28
gyp ERR! node-gyp -v v0.13.0
gyp ERR! not ok 

npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script.
npm ERR! This is most likely a problem with the iconv package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls iconv
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 3.8.0-19-generic
npm ERR! command "node" "/usr/local/bin/npm" "i"
npm ERR! cwd /root/Dropbox/nodeApps/nodeApp
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.10
npm ERR! code ELIFECYCLE
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /root/Dropbox/nodeApps/nodeApp/npm-debug.log
npm ERR! not ok code 0

bien que j'aie installé python et que je puisse l'exécuter à partir de la console:

# python
Python 2.7.3 (default, May  9 2014, 12:18:32) 
[GCC 4.8.2] on linux2

et configurez PATH dans ~/.bashrc:

export PYTHONPATH=$PYTHONPATH:/Python-2.7.3
export PATH=$PATH:/Python-2.7.3

et.. Voila . ~/.bashrc

27
Maxim Yefremov

Pour toute personne rencontrant ce problème sur Ubuntu 16.04 ...
node-gyp ne peut pas utiliser Python 3.5.X qui semble être la valeur par défaut fournie avec 16.04. J'ai lu quelque part que 16.04 était censé être livré avec Python2 également mais je ne trouve pas sur mon installation.

J'ai résolu le problème ci-dessus en:

apt-get update     
apt-get install python2.7    
ln -s /usr/bin/python2.7 /usr/bin/python 

Maintenant, quand node-gyp va chercher python il frappera votre installation Python2.7 et se chargera correctement.

48
Chase

Dans votre session bash où vous pouvez simplement taper python et obtenir une réponse valide, tapez which python et notez l'emplacement du chemin complet du binaire python. Prenez cet emplacement et placez-le dans vos variables d'environnement PYTHONPATH et PATH, sauf sans les python à la fin.

Par exemple, which python Donne moi:

/usr/local/bin/python

donc j'écrirais:

export PYTHONPATH=$PYTHONPATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin

dans mon ~/.bashrc.

10
huu

le problème était dû à ~/.bashrc n'a pas été chargé lors de la connexion ssh. J'ai mis PATH vars à ~/.bash_profile et c'est ok

2
Maxim Yefremov