"Nenhum tal arquivo ou diretório" erro ao usar npm

18

Eu instalei o node e o npm usando as instruções fornecidas aqui

Consegui usar o nó com sucesso. No entanto, enquanto tento instalar o módulo do nó "Formidable", recebo o seguinte erro:

$npm install formidable
bash: /usr/local/bin/npm: /usr/local/bin/node: bad interpreter: No such file or directory

Quando eu faço um which npm , recebo a seguinte saída:

$which npm
/usr/local/bin/npm

Eu não tenho ideia do que há de errado com o npm aqui - alguma ideia de como eu posso consertar isso?

    
por user109187 03.02.2013 / 18:45

3 respostas

33

Tomando a sugestão @gertvdijk, desinstalei o NPM usando o script:

rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/npm*

(que pode ser encontrado aqui )

Mesmo depois de realizar o acima, recebi outro erro:

$ npm install formidable  
bash: /usr/local/bin/npm: No such file or directory

Então, eu corri hash -r no terminal (conforme as instruções encontradas em NPM não será executado após o upgrade ) e voila - funcionou. O NPM agora funciona!

    
por user109187 04.02.2013 / 16:28
11

O Ubuntu e algumas distribuições Linux instalam o intérprete do nó como /usr/bin/nodejs , e não /usr/local/bin/node .

Você pode resolver esse problema instalando o pacote nodejs-legacy , que cria um link simbólico de /usr/bin/nodejs para /usr/bin/node .

Solução:

sudo apt-get install nodejs-legacy

Referências: pacote nodejs-legacy

    
por Pac 11.05.2014 / 17:49
2

Parece que você instalou outra versão do Node da origem algum tempo antes. Isso é indicado pelo caminho /usr/local/bin , onde parece estar instalado agora.

  1. Desinstale o que você instalou da origem. Veja as instruções que obtiveram com a fonte sobre como fazer isso. Não há uma maneira única de desinstalar os scripts de software instalados que não funcionam com o gerenciamento de pacotes do seu sistema.
  2. Instalar os pacotes com estão listados nas instruções que você vinculou em sua pergunta.
  3. Verifique se which npm agora lista /usr/bin como caminho de instalação.

Em geral, você nunca deve ter que instalar pacotes a partir do código-fonte. E se você fizer isso, por favor, esteja ciente das conseqüências, pois você está sobrescrevendo o gerenciamento de pacotes aqui e ficará confuso com isso.

    
por gertvdijk 04.02.2013 / 16:12

Tags