Come posso installare npm su 17.10?


11

Volevo solo installare npm tramite terminale e ora sono bloccato con alcune dipendenze.

Vuole che installi alcune dipendenze, ad esempio:

libssl1.0-dev
nodejs-dev
node-gyp

Anche se provo a installarli prima, mi dice che ho bisogno del predecessore prima.

L'ultima istanza di dipendenza è libssl-deve questo sembra già installato.

L'obiettivo è installare npm per far funzionare questa forcella elettronica sul mio sistema.

Grazie per il tuo aiuto.


@karel significa che non ho alcuna possibilità di installarlo su 17.10 e sono costretto a eseguire nuovamente il downgrade a 16.04?
Deniz,

fratello, volevo solo sapere come installare npm sul mio sistema. Non posso semplicemente usare "sudo apt install npm" a causa del problema che ho scritto nel mio primo commento.
Deniz,

Risposte:


9

Nota: questa risposta è stata aggiornata da quando è stata pubblicata per la prima volta perché ora esiste un modo migliore per installare l'ultima versione di npm che è integrata con il pacchetto snap nodo per l'installazione di Node.js. Dopo aver eseguito i comandi seguenti, l'esecuzione npm -vmostra che è installata e utilizzata l'ultima versione di npm.


Node.js è disponibile come pacchetto snap in tutte le versioni attualmente supportate di Ubuntu. Specifico per Node.js, gli sviluppatori possono scegliere tra una o più delle versioni attualmente supportate e ottenere aggiornamenti automatici regolari direttamente da NodeSource. Le versioni 6, 8, 9, 10, 11, 12 e 13 di Node.js sono attualmente disponibili, con lo Snap Store che viene aggiornato entro poche ore o minuti da una versione di Node.js.

Il nodo può essere installato con un singolo comando, ad esempio:

sudo snap install node --classic --channel 11/stable # also install snapd in 14.04 

Lo snap al nodo è accessibile dal comando node, ad esempio:

$ node -v  
v11.5.0

Una versione aggiornata di npm verrà installata come parte dello snap al nodo. npm dovrebbe essere eseguito al di fuori del nodo repl, nella shell normale. Dopo aver installato lo snap al nodo, eseguire il comando seguente per abilitare il controllo degli aggiornamenti di npm:

sudo chown -R $ USER: $ (id -gn $ USER) / home / tuo-nome utente /.config

Sostituisci your-usernamenel comando sopra con il tuo nome utente. Quindi eseguire npm -vper verificare se la versione di npm è aggiornata. Ad esempio, ho verificato che npm fosse aggiornato, ho controllato la versione di un pacchetto già installato chiamato filato con il comando npm list yarne quindi ho aggiornato il pacchetto di filato esistente all'ultima versione con il comandonpm update yarn

Gli utenti possono passare da una versione all'altra di Node.js in qualsiasi momento senza la necessità di coinvolgere strumenti aggiuntivi come nvm (Node Version Manager), ad esempio:

sudo snap refresh node --channel=10/stable

Gli utenti possono testare le versioni bleeding-edge di Node.js che possono essere installate dall'ultimo canale edge che attualmente sta monitorando Node.js versione 12 passando con:

sudo snap switch node --edge

Questo approccio è consigliato solo per quegli utenti che sono disposti a partecipare a test e segnalazione di bug a monte.

Node.js LTS Schedule

Rilascio Stato LTS Nome codice LTS Avvia manutenzione Avvia manutenzione Fine
6.x Boro attivo 2016-10-18 aprile 2018 aprile 2019
7.x No LTS              
8.x Active Carbon 2017-10-31 aprile 2019 dicembre 2019
9.x No LTS              
10.x Dubnium attivo ottobre 2018 aprile 2020 aprile 2021  
11.x No LTS 2019-04-01 2019-06-30
12.x 2019-10-22 2021-04-01 2022-04-01
13.x No LTS 2020-04-20 2020-06-01

Non ha funzionato per me
Jonathan il

I pacchetti di snap sono terribili per gli SSD. Spesso vengono aggiornati causando pesanti azioni di lettura / scrittura sul disco, il che non è ottimale per la durata dell'SSD. Li evito il più possibile. C'è anche il problema della sicurezza con Snaps, quindi fai attenzione.
Seth Bergman,

2

Ho avuto lo stesso problema. libssl è problematico poiché molti pacchetti ne vogliono versioni diverse. I principali piantagrane per me sono Spotify, Viber, DotNet Core, php5.6 (sistema legacy).

Comunque, questa soluzione sembra aver funzionato:

Sulla base della risposta di Jonathan Leaders, se guardi lo script che sta scaricando, vedrai che menziona 2 punti chiave: il repository e la chiave.

Per qualche motivo dopo aver eseguito solo quei comandi, nodejs si riferiva ancora a quello nei repository ufficiali di Ubuntu, ed era una vecchia versione, con requisiti contrastanti per libssl.

Aggiungili manualmente per risultati affidabili (come root):

echo 'deb https://deb.nodesource.com/node_9.x artful main' > /etc/apt/sources.list.d/nodesource.list
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -

Dopodiché, semplicemente apt-get updatee poiapt-get install nodejs

Dopodiché avrai anche npm senza installare nulla in più.

Nota che questo installa Nodejs 9.0, ma sono sicuro che lo stesso metodo funziona anche per altre versioni. Devi solo cambiare il numero di versione nella fonte del repository in/etc/apt/sources.list.d/nodesource.list



1

n-installazione

Nodo e npm installati con una riga di bash.

Installazione di n , il gestore versioni di Node.js, su piattaforme simili a Unix, senza la necessità di installare prima Node.js. Inoltre, installa gli script n-update per un successivo aggiornamento su richiesta di ne n-uninstallper la disinstallazione.

Il caso più semplice è l'installazione di n con prompt di conferma, con la successiva installazione dell'ultima versione di LTS Node.js:

curl -L https://git.io/n-install | bash

Questo è di gran lunga il modo più semplice per iniziare sia con n che Node.js - anche se stai cercando di installare solo l'ultima versione di NTS.js LTS (supporto a lungo termine), senza piani (immediati) per l'installazione di più versioni. La parte migliore è che puoi aggiornare la versione del nodo al volo. Deve essere il mio strumento nodo preferito. NVM è simile, ma nè la mia preferenza.


0

Inoltre, è possibile utilizzare NVM. Che è un Node Version Manager che consente di passare tra diverse versioni di Node in un modo molto semplice. Basta eseguire i seguenti comandi:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

command -v nvm

Quindi, riapri il tuo terminale ed esegui:

nvm install lts/*

Ciò scaricherà il codice sorgente di Nodejs e ne farà l'installazione.

Inoltre, uno dei principali vantaggi di NVM è la possibilità di installare pacchetti globali senza utilizzare sudo

Se vuoi maggiori informazioni su NVM, controlla il loro Github Repo:

https://github.com/creationix/nvm


Se è installato il pacchetto snap Node.js è possibile passare da una versione all'altra senza Node.js senza la necessità di coinvolgere strumenti aggiuntivi come nvm.
karel

Questa è un'ottima domanda Non credo che tu possa, dal momento che il principale principale degli snaps è avere l'ultima versione del software, che è isolata dal resto del filesystem.
Seth Bergman,
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.