Zainstalowałem węzeł i npm, korzystając z instrukcji podanych tutaj
Udało mi się z powodzeniem użyć węzła. Jednak podczas próby zainstalowania modułu węzła „Formidable” pojawia się następujący błąd:
$npm install formidable
bash: /usr/local/bin/npm: /usr/local/bin/node: bad interpreter: No such file or directory
Kiedy robię a which npm
, otrzymuję następujące dane wyjściowe:
$which npm
/usr/local/bin/npm
Nie mam pojęcia, co jest nie tak z npm tutaj - jakiś pomysł, jak to naprawić?
/usr/local/bin/
. Pakiety zastosowane w instrukcjach, które podłączyłeś, nie robią tego. Myślę, że zainstalowałeś także inny Węzeł ze źródła. Opowiedz całą historię.$sudo apt-get remove --purge nodejs npm
ale to nie zadziałało.node --version
po zainstalowaniu 0.8.18 nadal pokazywał 0.8.14. Tak więcwhich node
postąpiłem zgodnie z postem, którego nie mogę teraz znaleźć - po prostu poinstruowałem, aby wykonaćrm -r /usr/local/bin/...
- w zasadzie niektóre pliki związane z węzłami w tym katalogu. Teraz po tym ponownie zainstalowałem węzeł i była to zaktualizowana wersja. Działa dobrze, ale npm nie.Odpowiedzi:
Biorąc pod uwagę @gertvdijk, odinstalowałem NPM za pomocą skryptu:
(które można znaleźć tutaj )
Nawet po wykonaniu powyższego otrzymałem kolejny błąd:
Tak więc uruchomiłem
hash -r
terminal (zgodnie z instrukcjami pod NPM nie uruchomi się po aktualizacji ) i voila - zadziałało. NPM działa teraz!źródło
hash
, którego można po prostu użyć, aby wskazać inny węzeł / npm (a jeśli chcę pracować z więcej niż jedną wersją węzła?)hash
robi !?Ubuntu i niektóre dystrybucje Linuksa instalują interpreter węzła jako
/usr/bin/nodejs
, a nie/usr/local/bin/node
.Możesz rozwiązać ten problem, instalując
nodejs-legacy
pakiet, który tworzy dowiązanie symboliczne od/usr/bin/nodejs
do/usr/bin/node
.Rozwiązanie:
Odniesienia: pakiet nodejs-legacy
źródło
nodejs-legacy
że już nie istnieje.Wygląda na to, że wcześniej zainstalowano inną wersję węzła ze źródła. Wskazuje na to
/usr/local/bin
ścieżka, w której wydaje się być teraz zainstalowany.which npm
teraz jest wyświetlana/usr/bin
jako ścieżka instalacji.Ogólnie rzecz biorąc, nigdy nie powinieneś instalować pakietów ze źródła. A jeśli to zrobisz, pamiętaj o konsekwencjach, gdy przeskakujesz tutaj zarządzanie pakietami, a my się z tym pogubimy.
źródło