2013-09-26 2 views
4

Je ne suis pas très habile donc garder avec moi ...Problèmes avec l'installation sous Linux nœud/en cours d'exécution NPM installer

Je suis en train d'installer Node.js en suivant ces instructions:

sudo apt-get update 
sudo add-apt-repository ppa:chris-lea/node.js 
sudo apt-get update 
sudo apt-get install nodejs=0.10.18-1chl1~precise1 

qui sont trouvé ici: https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager

j'ai couru ces commandes et après la dernière commande, j'ai reçu cette erreur:

Some packages could not be installed. This may mean that you have 
requested an impossible situation or if you are using the unstable 
distribution that some required packages have not yet been created 
or been moved out of Incoming. 
The following information may help resolve the situation: 

The following packages have unmet dependencies: 
nodejs : Conflicts: npm 
E: Unable to correct problems, you have held broken packages. 

J'ai ensuite essayé d'exécuter la commande sudo apt-get install nodejs qui ne m'a donné aucune erreur.

Cependant, quand je lance « NPM installer » il ne parvient présenter ceci:

npm ERR! install Couldn't read dependencies 
npm ERR! Error: ENOENT, open '/home/sarah/package.json' 
npm ERR! If you need help, you may report this log at: 
npm ERR!  <http://github.com/isaacs/npm/issues> 
npm ERR! or email it to: 
npm ERR!  <[email protected]> 

npm ERR! System Linux 3.8.0-30-generic 
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" 
npm ERR! cwd /home/sarah 
npm ERR! node -v v0.11.8-pre 
npm ERR! npm -v 1.3.11 
npm ERR! path /home/sarah/package.json 
npm ERR! code ENOENT 
npm ERR! errno -2 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/sarah/npm-debug.log 
npm ERR! not ok code 0 

Quelqu'un peut-il me aider à comprendre ce qui se passe mal? Merci d'avance

+0

Avez-vous par hasard déjà installé NPM? Avez-vous envisagé d'installer l'archive tar binaire? – Brad

+0

Je ne sais même pas que c'est – Sarah

+0

Je pense que vous feriez mieux d'installer le nœud via [https://github.com/creationix/nvm](nvm) à la place des binaires. – Sriharsha

Répondre

10

Cette commande: sudo apt-get install nodejs=0.10.18-1chl1~precise1 est juste une pièce de documentation peu judicieuse. La spécification du numéro de version exact est une erreur dans le cas d'utilisation commun. Donc, votre utilisation de seulement sudo apt-get install nodejs est la commande correcte et tout devrait bien se passer maintenant. Après cela, il semble que vous ayez à la fois node et npm (ils sont assemblés) installés avec succès. Maintenant, vous essayez d'exécuter npm install, qui est normalement exécuté dans le répertoire d'un module de noeud et recherche un fichier package.json. Étant donné que votre répertoire personnel n'est pas un module de noeud et ne contient pas de fichier package.json, vous obtenez une erreur.

Le noeud est installé correctement et vous êtes prêt à partir. Vous pouvez commencer à développer un nouveau module avec npm init ou vous pouvez cloner un module existant de github par exemple, cd dans le répertoire de ce module, puis exécutez npm install et cela devrait fonctionner.

+0

Je ne sais pas vraiment comment cloner un module de github (je connais très peu de choses sur Linux) ... Quand je lance npm init il demande un dépôt git - puisque je ne télécharge pas sur github, dois-je spécifier quelque chose ici? – Sarah

+0

non, npm init écrit simplement votre fichier package.json, si vous laissez le repo git vide, il sera simplement vide dans votre package.json. Vous pouvez le mettre à jour plus tard en utilisant un éditeur de texte si vous changez d'avis sur le fait d'avoir un repo git. – Paul

+0

Vous ne savez pas ce que vous essayez d'accomplir dans la grande image (et donc quelle est votre prochaine étape), mais node & npm sont OK. Si vous voulez écrire un script de noeud, écrivez du code dans 'myscript.js' et exécutez-le avec' node myscript.js' et il fonctionnera. –