86 votes

erreur browserify / usr / bin / env: noeud: aucun fichier ni répertoire de ce type

J'ai installé node js et npm via apt-get install et toutes les dépendances, puis j'ai installé browserify

npm install browserify -g

il passe par le processus, et il me semble qu'il est installé correctement, mais lorsque j'essaie de faire un simple paquet par cette procédure pas à pas

J'obtiens l'erreur:

/usr/bin/env: nœud: Aucun fichier ou répertoire

enter image description here

253voto

bodokaiser Points 3226

Certaines distributions linux installent nodejs non pas en tant que "noeud" exécutable, mais en tant que "nodejs".

Dans ce cas, vous devez vous lier manuellement à "node" car de nombreux paquets sont programmés après le binaire "node". Quelque chose de similaire se produit également avec "python2" non lié à "python".

Dans ce cas, vous pouvez créer un lien symbolique simple. Pour les distributions linux qui installent les fichiers binaires de paquets sur /usr/bin vous pouvez le faire

 ln -s /usr/bin/nodejs /usr/bin/node
 

53voto

airtonix Points 1048

Toute discussion sur la création de liens symboliques ou l'installation d'un autre paquet de nœuds est fallacieuse et non durable.

La bonne façon de résoudre ceci est de:

  1. installez simplement le paquet nodejs avec apt-get comme vous l'avez déjà fait
  2. utilisez update-alternatives pour indiquer que votre binaire nodejs est responsable de #!/usr/bin/env node

Ainsi :

 sudo apt-get install nodejs
sudo update-alternatives --install /usr/bin/node nodejs /usr/bin/nodejs 100
 

Cela devient maintenant durable lors des mises à niveau, des mises à niveau, etc.

35voto

alex Points 4257

Exécutez apt-get install nodejs-legacy .

Certaines distributions linux ont changé le nom binaire de node.js, le rendant incompatible avec de nombreux packages node.js. Le package nodejs-legacy fournit un lien symbolique pour résoudre ce problème.

0voto

kangear Points 333

Je semble avoir le même problème lorsque je construis atome sous Linux.

 sudo apt-get install nodejs-dev
 

Corrigez ma question. J'espère vous être utile.

-1voto

momo70 Points 8

Vous devez appeler le "nodejs" et non pas "nœud". Pour le vérifier, tapez node -v sur le shell: si rien n'est trouvé essayez nodejs -v. Si qui affiche un numéro de version, la commande à utiliser est - nodejs et pas node. Par conséquent, vous devez modifier l'appel de browserify dans votre script à partir d' node de nodejs (comme indiqué ci-dessous): remplacer

#!/usr/bin/env node

avec

#!/usr/bin/env nodejs

Vous pourriez aussi avoir à ouvrir le script en tant que superutilisateur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X