Impossibile installare npm - Impossibile correggere i problemi, hai conservato pacchetti rotti?


27

Sto cercando di aggiornare i miei nodejs a 7.6 ma non sono riuscito. Ora ho un nuovo problema dopo aver reinstallato il nodo 6.10:

$ sudo apt-get purge nodejs npm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'npm' is not installed, so not removed
The following packages were automatically installed and are no longer required:
  linux-headers-4.8.0-40 linux-headers-4.8.0-40-generic linux-image-4.8.0-40-generic linux-image-extra-4.8.0-40-generic
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED
  nodejs*
0 to upgrade, 0 to newly install, 1 to remove and 53 not to upgrade.
After this operation, 51.7 MB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 278133 files and directories currently installed.)
Removing nodejs (6.9.5-1nodesource1~yakkety1) ...
Processing triggers for man-db (2.7.5-1) ...
(Reading database ... 274476 files and directories currently installed.)
Removing nodejs (6.9.5-1nodesource1~yakkety1) ...
Purging configuration files for nodejs (6.9.5-1nodesource1~yakkety1) ...
dpkg: warning: while removing nodejs, directory '/usr/lib/node_modules' not empty so not removed

Perché si dice Package 'npm' is not installed, so not removed? sto usando npm per installare molti pacchetti di nodi per i miei progetti !!

Ignoro l'errore e ho continuato l'installazione del nodo 7.6:

$ curl -sL https://deb.nodesource.com/setup_7.6 | sudo -E bash - 
bash: line 1: html: No such file or directory
bash: line 2: syntax error near unexpected token `<'
'ash: line 2: `<head><title>404 Not Found</title></head>

Quindi sono tornato al nodo 6.x. Ma non riesco più a installare npm:

$ sudo apt-get install npm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
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 to resolve the situation:

The following packages have unmet dependencies.
 npm : Depends: nodejs but it is not going to be installed
       Depends: node-abbrev (>= 1.0.4) but it is not going to be installed
       Depends: node-ansi (>= 0.3.0-2) but it is not going to be installed
       Depends: node-ansi-color-table but it is not going to be installed
       Depends: node-archy but it is not going to be installed
       Depends: node-block-stream but it is not going to be installed
       Depends: node-fstream (>= 0.1.22) but it is not going to be installed
       Depends: node-fstream-ignore but it is not going to be installed
       Depends: node-github-url-from-git but it is not going to be installed
       Depends: node-glob (>= 3.1.21) but it is not going to be installed
       Depends: node-graceful-fs (>= 2.0.0) but it is not going to be installed
       Depends: node-inherits but it is not going to be installed
       Depends: node-ini (>= 1.1.0) but it is not going to be installed
       Depends: node-lockfile but it is not going to be installed
       Depends: node-lru-cache (>= 2.3.0) but it is not going to be installed
       Depends: node-minimatch (>= 0.2.11) but it is not going to be installed
       Depends: node-mkdirp (>= 0.3.3) but it is not going to be installed
       Depends: node-gyp (>= 0.10.9) but it is not going to be installed
       Depends: node-nopt (>= 3.0.1) but it is not going to be installed
       Depends: node-npmlog but it is not going to be installed
       Depends: node-once but it is not going to be installed
       Depends: node-osenv but it is not going to be installed
       Depends: node-read but it is not going to be installed
       Depends: node-read-package-json (>= 1.1.0) but it is not going to be installed
       Depends: node-request (>= 2.25.0) but it is not going to be installed
       Depends: node-retry but it is not going to be installed
       Depends: node-rimraf (>= 2.2.2) but it is not going to be installed
       Depends: node-semver (>= 2.1.0) but it is not going to be installed
       Depends: node-sha but it is not going to be installed
       Depends: node-slide but it is not going to be installed
       Depends: node-tar (>= 0.1.18) but it is not going to be installed
       Depends: node-underscore 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.

Qualche idea?


2
prova questo sudo apt install -f, quindi riprova a installare!
George Udosen,

Risposte:


41

Ho avuto lo stesso problema con npm e ho dovuto installare i seguenti pacchetti in ordine:

sudo apt install libssl1.0-dev
sudo apt install nodejs-dev
sudo apt install node-gyp
sudo apt install npm

Spero che sia di aiuto


1
Ho lottato con questo per un paio d'ore e questo ha funzionato come un fascino. Grazie!
desveladisimo,

(Su Kubuntu 18.04) avevo precedentemente installato libssl-dev, che risulta corrispondere a libssl1.1, ma apparentemente npm richiede 1.0. Ho dovuto rimuovere libssl-dev e sostituirlo con libssl1.0-dev, e tutto ha funzionato bene. Gli errori apt non sono stati utili nel determinare ciò che era sbagliato, quindi la tua risposta è stata salvavita.
Richard Hussong,

Sì! Grazie! (Ubuntu 18.04.3 LTS)
Toni Homedes i Saun

Grazie mille, mi aiuta
Muthusamy il

34

Ho avuto lo stesso problema con npm.

Ti suggerisco di installare aptitude che può aiutarti a risolvere i conflitti

sudo apt install aptitude

quindi installa il tuo pacchetto con aptitude

sudo aptitude install npm

1
La soluzione migliore deve provare se
ricevi un

Davvero fantastico avere questo. Ciò ha risolto il problema
Jerrychayan il

Ho avuto un problema di dipendenza. L'unica soluzione che ho trovato. Grazie.
karjedavpalaa,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.