Chciałem po prostu zainstalować npm przez terminal, a teraz utknąłem z pewnymi zależnościami.
Chce, żebym zainstalował kilka zależności, na przykład:
libssl1.0-dev
nodejs-dev
node-gyp
Nawet jeśli spróbuję zainstalować je jako pierwsze, to powie mi, że potrzebuję poprzednika.
Ostatni przypadek zależności jest libssl-dev
i wydaje się, że jest już zainstalowany.
Celem jest zainstalowanie npm, aby ten elektronowy widelec działał w moim systemie.
Dzięki za pomoc
Odpowiedzi:
Uwaga: Ta odpowiedź została zaktualizowana od czasu jej pierwszego opublikowania, ponieważ istnieje teraz lepszy sposób instalacji najnowszej wersji npm, która jest wbudowana w pakiet snap węzła do instalacji Node.js. Po uruchomieniu poniższych poleceń uruchomione
npm -v
pokaże, że najnowsza wersja npm jest zainstalowana i używana.Node.js jest dostępny jako pakiet przystawek we wszystkich obecnie obsługiwanych wersjach Ubuntu. W przypadku Node.js programiści mogą wybierać jedną lub więcej spośród obecnie obsługiwanych wersji i otrzymywać regularne automatyczne aktualizacje bezpośrednio z NodeSource. Wersje 6, 8, 9, 10, 11, 12 i 13 Node.js są obecnie dostępne, a Snap Store jest aktualizowany w ciągu kilku godzin lub minut od wydania Node.js.
Węzeł można zainstalować za pomocą jednego polecenia, na przykład:
Do przyciągania do węzła można uzyskać polecenie
node
, na przykład:Zaktualizowana wersja npm zostanie zainstalowana jako część przystawki węzła. npm powinien być uruchamiany poza replikacją węzła, w normalnej powłoce. Po zainstalowaniu przystawki węzła uruchom następujące polecenie, aby włączyć sprawdzanie aktualizacji npm:
Zamień
your-username
powyższe polecenie na własną nazwę użytkownika. Następnie uruchom,npm -v
aby sprawdzić, czy wersja npm jest aktualna. Jako przykład sprawdziłem, czy npm jest aktualny, sprawdziłem wersję już zainstalowanego pakietu o nazwie przędza za pomocą polecenia,npm list yarn
a następnie zaktualizowałem istniejący pakiet przędzy do najnowszej wersji za pomocą polecenianpm update yarn
Użytkownicy mogą w dowolnym momencie przełączać się między wersjami Node.js bez konieczności angażowania dodatkowych narzędzi, takich jak nvm (Node Version Manager), na przykład:
Użytkownicy mogą testować najnowszą wersję Node.js, którą można zainstalować z najnowszego kanału brzegowego, który aktualnie śledzi Node.js w wersji 12, przełączając się za pomocą:
Takie podejście jest zalecane tylko tym użytkownikom, którzy są gotowi uczestniczyć w testowaniu i zgłaszaniu błędów na wcześniejszym etapie.
Node.js LTS Schedule
źródło
Miałem ten sam problem. libssl jest kłopotliwy, ponieważ wiele pakietów chce różnych wersji. Najbardziej kłopotliwi dla mnie są Spotify, Viber, DotNet Core, php5.6 (starszy system).
W każdym razie wydaje się, że to rozwiązanie zadziałało:
Na podstawie odpowiedzi Jonathana Leadersa, jeśli spojrzysz na skrypt, który pobiera, zobaczysz, że wspomina o 2 kluczowych punktach: repozytorium i kluczu.
Z jakiegoś powodu po uruchomieniu tylko tych poleceń, nodejs wciąż odnosił się do tego z oficjalnych repozytoriów Ubuntu, i była to stara wersja z sprzecznymi wymaganiami dla libssl.
Dodaj je ręcznie, aby uzyskać wiarygodne wyniki (jako root):
Potem po prostu
apt-get update
i wtedyapt-get install nodejs
Następnie będziesz mieć npm bez instalowania czegokolwiek.
Zauważ, że to instaluje Nodejs 9.0, ale jestem pewien, że ta sama metoda działa również w przypadku innych wersji. Musisz tylko zmienić numer wersji w źródle repozytorium w
/etc/apt/sources.list.d/nodesource.list
źródło
Najpierw sprawdź, który numer wersji jest najnowszy tutaj: https://github.com/nodesource/distribution/tree/master/deb
W naszym przypadku tak jest
setup_9.x
Udowodnij, że jest teraz zainstalowany
npm -v
Źródło: https://tecadmin.net/install-latest-nodejs-npm-on-ubuntu/
Edycja : Dodano „curl” do początkowych zależności.
źródło
n-zainstaluj
Węzeł i npm zainstalowane z jedną linią
bash
.Instalacja n , menedżera wersji Node.js, na platformach uniksowych, bez konieczności wcześniejszej instalacji Node.js. Dodatkowo instaluje skrypty n-update do późniejszej aktualizacji na żądanie
n
in-uninstall
do odinstalowania.Najprostszym przypadkiem jest instalacja nz monitem o potwierdzenie, a następnie instalacja najnowszej wersji LTS Node.js:
Jest to zdecydowanie najprostszy sposób na rozpoczęcie pracy zarówno z N, jak i Node.js - nawet jeśli chcesz zainstalować tylko najnowszą wersję Lode (wsparcie długoterminowe) Node.js, bez żadnych (natychmiastowych) planów instalacji wielu wersje. Najlepsze jest to, że możesz aktualizować wersję węzła w locie. To musi być moje ulubione narzędzie do węzłów. NVM jest podobny, ale
n
moje preferencje.źródło
Możesz także użyć NVM. Który jest menedżerem wersji węzła, który umożliwia przełączanie pomiędzy różnymi wersjami węzłów w bardzo prosty sposób. Wystarczy uruchomić następujące polecenia:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
command -v nvm
Następnie ponownie otwórz terminal i wykonaj:
nvm install lts/*
Spowoduje to pobranie kodu źródłowego Nodejs i wykonanie instalacji dla Ciebie.
Jedną z kluczowych zalet NVM jest możliwość instalowania globalnych pakietów bez użycia
sudo
Jeśli chcesz uzyskać więcej informacji o NVM, sprawdź ich repozytorium Github:
https://github.com/creationix/nvm
źródło