17.10'da npm'yi nasıl kurabilirim?


11

Ben sadece terminal aracılığıyla npm yüklemek istedim ve şimdi sadece bazı bağımlılıklar ile sıkışmış.

Birkaç bağımlılık kurmamı istiyor, örneğin:

libssl1.0-dev
nodejs-dev
node-gyp

Bunları ilk önce yüklemeye çalışsam bile, daha önce selefine ihtiyacım olduğunu söylüyor.

Son bağımlılık örneği libssl-devve bu zaten kurulu gibi görünüyor.

Hedef, bu elektron çatalı sistemime çalıştırmak için npm takmak .

Yardımın için teşekkürler.


@karel, 17.10'a yükleme şansım olmadığı ve tekrar 16.04'e geçmeye zorlandığım anlamına mı geliyor?
Deniz

kardeşim, sadece npm'i sistemime nasıl kuracağımı bilmek istedim. Ben sadece benim ilk yorum yazdım sorun nedeniyle basit kullanımı "sudo apt install npm" cant.
Deniz

Yanıtlar:


9

Not: Bu yanıt, ilk yayınlandığı zamandan beri güncellendi çünkü Node.js'yi yüklemek için düğüm snap paketi ile yerleşik olan npm'in en son sürümünü yüklemenin daha iyi bir yolu var. Aşağıdaki komutları çalıştırdıktan sonra çalışan npm -vnpm'in en son sürümünün kurulu olduğunu ve kullanıldığını gösterecektir.


Node.js, şu anda desteklenen tüm Ubuntu sürümlerinde ek paket olarak kullanılabilir. Node.js'ye özgü olarak, geliştiriciler şu anda desteklenen sürümlerden bir veya daha fazlasını seçebilir ve doğrudan NodeSource'tan düzenli otomatik güncellemeler alabilirler. Node.js 6, 8, 9, 10, 11, 12 ve 13 sürümleri şu anda kullanılabilir; Snap Store, Node.js sürümünün saatler veya dakikalar içinde güncellenir.

Düğüm tek bir komutla kurulabilir, örneğin:

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

Düğüm ekine komutla erişilebilir node, örneğin:

$ düğüm -v  
v11.5.0

Düğüm ekinin bir parçası olarak npm'in güncel bir sürümü yüklenir. npm, normal kabuğunuzda düğüm yanıtının dışında çalıştırılmalıdır. Düğüm ekini yükledikten sonra, npm güncelleme kontrolünü etkinleştirmek için aşağıdaki komutu çalıştırın:

sudo chown -R $ USER: $ (id -gn $ USER) / home / kullanıcı adınız /.config

your-usernameYukarıdaki komutta kendi kullanıcı adınızla değiştirin . Ardından npm -v, npm sürümünün güncel olup olmadığını kontrol etmek için çalıştırın . Örnek olarak, npm'in güncel olduğunu kontrol ettim, önceden kurulmuş bir paketin iplik isimli komutunu komutla kontrol ettim npm list yarnve sonra mevcut iplik paketini komutla en son sürüme güncelledimnpm update yarn

Kullanıcılar nvm (Düğüm Sürümü Yöneticisi) gibi ek araçlara ihtiyaç duymadan Node.js sürümleri arasında istedikleri zaman geçiş yapabilirler, örneğin:

sudo snap refresh node --channel=10/stable

Kullanıcılar, şu anda Node.js sürüm 12'yi izleyen en son kenar kanalından kurulabilen Node.js'nin yeni sürümlerini şu yöntemlerle test edebilir:

sudo snap switch node --edge

Bu yaklaşım, yalnızca test öncesi ve hata raporlamaya katılmak isteyen kullanıcılar için önerilir.

Node.js LTS Zamanlaması

Bırakın LTS Durum Kod Adı LTS Bakım Başlat Bakım Bakım Bitir
6.x Aktif Bor 2016-10-18 Nisan 2018 Nisan 2019
7.x LTS yok              
8.x Aktif Karbon 2017-10-31 Nisan 2019 Aralık 2019
9.x LTS yok              
10.x Active Dubnium Ekim 2018 Nisan 2020 Nisan 2021  
11.x LTS Yok 2019-04-01 2019-06-30
12.x 2019-10-22 2021-04-01 2022-04-01
13.x LTS yok 2020-04-20 2020-06-01

Benim için çalışmadı
Jonathan

Snap paketleri SSD'ler için korkunç. Sık sık güncelleştirilirler, disk üzerinde SSD'nin ömrü için uygun olmayan ağır okuma / yazma eylemlerine neden olurlar. Onlardan mümkün olduğunca kaçınırım. Snaps ile güvenlik sorunu da var, bu yüzden dikkatli olun.
Seth Bergman

2

Aynı sorunu yaşadım. libssl zahmetlidir çünkü pek çok paket farklı versiyonlar ister. Benim için en büyük sıkıntılar Spotify, Viber, DotNet Core, php5.6 (eski sistem).

Her neyse, bu çözüm işe yaramış gibi görünüyor:

Jonathan Leaders'ın cevabına dayanarak, indirdiği senaryoya bakarsanız, 2 anahtar noktadan bahsettiğini göreceksiniz: depo ve anahtar.

Bir nedenden ötürü, sadece bu komutları çalıştırdıktan sonra, nodejs hala resmi Ubuntu depolarındaki komuttan bahsediyordu ve libssl için çakışan gereksinimleri olan eski bir versiyonuydu.

Güvenilir sonuçlar için bunları kök olarak ekleyin:

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 -

Ondan sonra, basitçe apt-get updateve sonraapt-get install nodejs

Bundan sonra npm de ek bir şey yüklemeden olacak.

Bu, Nodejs 9.0'ı yüklediğini unutmayın, ancak aynı yöntemin diğer sürümler için de çalıştığından eminim. Sadece depo kaynağındaki sürüm numarasını/etc/apt/sources.list.d/nodesource.list



1

n-install

Düğüm ve npm bir satır ile kuruldu bash.

Node.js sürüm yöneticisi n'nin , Noix.js'yi yüklemeye gerek kalmadan Unix benzeri platformlara yüklenmesi. Ayrıca, daha sonra isteğe bağlı güncelleme nve n-uninstallkaldırma için n-update komut dosyalarını yükler .

En basit durum, n'nin onay istemiyle yüklenmesi ve en son LTS Node.js sürümünün daha sonra kurulmasıdır:

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

Bu, hem n hem de Node.js ile çalışmaya başlamak için en basit yoldur - yalnızca en son LTS (uzun vadeli destek) Node.js sürümünü yüklemek istiyorsanız bile, sürümleri. En iyi bölüm, düğüm sürümünü anında güncelleyebilmenizdir. Bu benim en sevdiğim düğüm aracı olmalı. NVM benzer, ancak nbenim tercihim.


0

Ayrıca, NVM'yi kullanabilirsiniz. Bu, farklı Düğüm sürümleri arasında çok basit bir şekilde geçiş yapmanızı sağlayan bir Düğüm Sürümü Yöneticisi'dir. Sadece aşağıdaki komutları çalıştırın:

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

command -v nvm

Ardından terminalinizi yeniden açın ve çalıştırın:

nvm install lts/*

Bu, Nodejs kaynak kodunu indirecek ve sizin için kurulum yapacaktır.

Ayrıca, NVM'nin en önemli avantajlarından biri, global paketleri kullanmadan yükleme yeteneğidir sudo

NVM hakkında daha fazla bilgi edinmek için Github Repo'larını kontrol edin:

https://github.com/creationix/nvm


Node.js ek paketi yüklüyse, nvm gibi ek araçlara gerek duymadan Node.js'nin farklı sürümleri arasında geçiş yapmak mümkündür.
karel

Bu harika bir soru. Snaps'ın temel ilkesi, yazılımın dosya sisteminin geri kalanından izole edilmiş en son sürümüne sahip olması gerektiğine inanmıyorum.
Seth Bergman
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.