não foi possível instalar o npm no ubuntu

37

Tentei instalar o nodejs e o npm no ubuntu 12.04. Eu pesquisei e fiz isso. Agora, não consegui instalar o npm na máquina.

sudo apt-get install npm

O que me dá isso

The following packages have unmet dependencies:
 npm : Depends: nodejs but it is not going to be installed
       Depends: nodejs-dev
       Depends: node-request but it is not going to be installed
       Depends: node-mkdirp but it is not going to be installed
       Depends: node-minimatch but it is not going to be installed
       Depends: node-semver but it is not going to be installed
       Depends: node-ini but it is not going to be installed
       Depends: node-graceful-fs but it is not going to be installed
       Depends: node-abbrev but it is not going to be installed
       Depends: node-nopt but it is not going to be installed
       Depends: node-fstream but it is not going to be installed
       Depends: node-rimraf but it is not going to be installed
       Depends: node-tar but it is not going to be installed
       Depends: node-which but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
user3297351
fonte
3
Acho que ninguém diz, mas apt-get install npmdeve ser evitado (!). Verifique se npm -vexiste antes de tentar instalar .... (leia mais abaixo na resposta da @ MarcoCerpi)
Peter Krauss

Respostas:

34

Parece que você provavelmente instalou o chris-lea node.js ppa, o que está correto . No entanto, você não instala o npm a partir desse ppa, pois ele quebra o funcionamento dos pacotes debian. Em vez disso, basta instalar nodejs. Depois de instalado, execute npm -vo procedimento de instalação. Se você não usou o chris-lea ppa, atualize sua pergunta em qual página do Google você pesquisou para descobrir como instalar o nodejs no Ubuntu.

Marco Ceppi
fonte
7
Como ele executaria "npm -v" se ele não pode instalar o npm ...?
Mariano Argañaraz
10
Os "modernos" apt-get install nodejstambém npmatualizam a instalação, então, eu entendo que apt-get install npmdeve ser evitado (!).
Peter Krauss
Tirei o PPA e eu tenho `npm: Depende: nó-gyp (> = 0.10.9), mas não vai ser installed`
Jonathan
7

Tente instalar os NodeJs assim:

sudo apt-get install nodejs

Como o NodeJs instala o nó e o npm

Mariano Argañaraz
fonte
2
não funciona com 16.04
ZZ 5
não npminstalado com este ...
Gigiux 03/07
1

Resolvi esse problema seguindo esta documentação .

Ponteiros para lembrar de trabalhar com o npm:

mkdir ~/nodejs/ && cd ~/nodejs
sudo apt-get install npm
npm install
npm update

Ao desenvolver aplicativos, se o nodejs precisar de um módulo específico, execute

cd ~/nodejs
npm install modulename   #for example sendgrid

Às vezes, os módulos precisam instalar globalmente; então use

sudo npm install modulename -g"

Para remover um módulo:

cd ~/nodejs
npm uninstall modulename          # if locally installed or 
sudo npm uninstall modulename -g  # if globally installed

npm prune ajuda a remover dependências não atendidas

user3297351
fonte
4
Ele não pode instalar o npm men, como ele conseguiu chegar ao ponto 3 ?!
Mariano Argañaraz
0

O problema é registro, execute este comando,

npm config set registry http://registry.npmjs.org/

Eu trabalho dessa maneira, verifique se funciona para você

Jay Patel
fonte
4
Como ele executaria "npm config ..." se ele não pode instalar o npm ...?
Mariano Argañaraz
Quando ele executa o sudo apt-get install npmcomando, dá "erro de dependências não atendidas". Percebo o erro npm já instalado, só preciso definir o URL do registro.
Jay Patel
0

Primeiro, você precisa instalar o PPA para obter acesso ao seu conteúdo:

curl -sL https://deb.nodesource.com/setup_9.x | sudo bash -

(Isso para a versão 9, que é a versão mais recente no momento da redação deste documento).

E depois

sudo apt-get install nodejs
faizan
fonte
0

O Apt não lida bem com conflitos de dependência, usa snap ou aptitude;

sudo aptitude install npm

Eu tive que pressionar "não" para a primeira solução proposta, que não incluía a instalação do npm (que deve ser um bug no aptitude); em seguida, a segunda solução que eu pressionei yespara verificar o npm foi instalada:

npm --version

Jonathan
fonte
0

Conflito de versão do npm instalado manualmente e que vem com os nodejs mais recentes.

Portanto, você pode tentar remover o nodejs, remover o npm antigo e instalar o novo nodejs novamente, que vem com o npm.

Sergey Nikishchenko
fonte
-2

A instalação do nodejs instalará o npm, então remova o nodejs e reinstale-o:

sudo apt-get remove nodejs
Russo
fonte