![Nodejs: Hängt ab von: rlwrap, ist aber nicht installierbar](https://rvso.com/image/652676/Nodejs%3A%20H%C3%A4ngt%20ab%20von%3A%20rlwrap%2C%20ist%20aber%20nicht%20installierbar.png)
Habe gerade einen neuen virtuellen Server in der Cloud gekauft, Ubuntu 14.04.
Ich habe meine Pakete mit apt-get update aktualisiert.
Beim Versuch, Node JS zu installieren, traten Probleme auf. Ich bin dieser Anleitung gefolgt:https://github.com/joyent/node/wiki/installing-node.js-via-package-manager
Beim Laufen sudo apt-get install -y nodejs
bekomme ich Folgendes:
user@server sudo apt-get install nodejs
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:
nodejs : Depends: rlwrap but it is not installable
E: Unable to correct problems, you have held broken packages.
Was ist dieser rlwrap? Ich habe gegoogelt, aber nicht herausgefunden, wie man ihn installiert.
--Aktualisieren--
Ich habe die folgenden Vorschläge ausprobiert. Kein Erfolg. Ich habe ein Downgrade auf 12.04 durchgeführt. Dort hat alles funktioniert.
Antwort1
Ich hatte genau das gleiche Problem in Ubuntu 14.04. Die Lösung:
- Herunterladen
rlwrap
vonhttp://packages.ubuntu.com/trusty/rlwrap. Hier ist einDirekte Verbindung - Es installieren
sudo dpkg -i rlwrap_0.34-2_amd64.deb
- Installieren Sie nodejs
sudo apt-get install nodejs
Antwort2
- Universe-Repository aktivieren
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
- reparieren und aktualisieren
sudo dpkg --configure -a && sudo apt-get update && sudo apt-get -y upgrade
- Versuchen Sie es erneut (beachten Sie, dass die node.js-Anweisungen die Ubuntu-Repositorys durch benutzerdefinierte ersetzen, stellen Sie also sicher, dass das Skript funktioniert hat).
>apt-cache show rlwrap Package: rlwrap Priority: optional Section: universe/editors Installed-Size: 300 Maintainer: Ubuntu Developers <[email protected]> Original-Maintainer: Francois Marier <[email protected]> Architecture: amd64 Version: 0.37-2 Provides: readline-editor Depends: libc6 (>= 2.4), libncurses5 (>= 5.7+20100313), libreadline6 (>= 6.0) Filename: pool/universe/r/rlwrap/rlwrap_0.37-2_amd64.deb Size: 80968 MD5sum: 8fca381b84e7205b92615d2d2f6df588 SHA1: ea227d0b53c16cec64f259e349d69073fce972f8 SHA256: 09d5d948a387f77a1f09b8ad800a73349dbcd6245f787496e0f1743df5259ea4 Description-en: readline feature command line wrapper This package provides a small utility that uses the GNU readline library to allow the editing of keyboard input for any other command. Input history is remembered across invocations, separately for each command; history completion and search work as in bash and completion word lists can be specified on the command line. Homepage: http://utopia.knoware.nl/~hlub/uck/rlwrap/ Description-md5: 2dd4e4df63ed824e61c4e21ad05cd1eb Bugs: https://bugs.launchpad.net/ubuntu/+filebug Origin: Ubuntu Task: edubuntu-desktop-kde, edubuntu-desktop-gnome
Antwort3
Hier ist, was bei mir funktioniert hat, um node.js auf Ubuntu 14.04 zu installieren, und eine kleine Erklärung, warum ich Node lieber auf diese Weise installiere.
Dabei wird ein PPA eines Drittanbieters hinzugefügt – das von vielen Leuten verwendet wird und das beliebteste PPA für Node auf Ubuntu zu sein scheint. Führen Sie Folgendes aus:
sudo apt-get install python-software-properties
+
sudo apt-add-repository ppa:chris-lea/node.js
+
sudo apt-get update
+
sudo apt-get install nodejs
Überprüfen Sie die Installation mit
node -v
Hintergrund
Es scheint, dass nodejs einen Konflikt mit einem anderen Paket hat, das von Debian und Ubuntu verwendet wird und ebenfalls „node“ heißt.
Wenn Sie beispielsweise Ubuntu-Repos mit folgendem durchsuchen:
apt-cache search node | grep Amateur
Sie sehen ein Paket namens
Knoten - Amateur Packet Radio Node-Programm (Übergangspaket)
Es handelt sich um ein altes Amateurfunkpaket, dem Debian/Ubuntu in beiden Ubuntu-Repos Vorrang vor nodejs eingeräumt hat.Undals Befehlszeilenargument.
Ich könnte mich irren, aber ich glaube, Debain/Ubuntu haben ihre Version von Node so geändert, dass der Befehl verwendet wird, nodejs
wo der normale Befehl ist node
, um Konflikte zwischen den beiden Paketen zu vermeiden.
Ich habe nicht vor, die Amateurfunkversion jemals zu installieren, also entscheide ich mich für die Installation einer nicht offiziellen Version, von der ich weiß, dass sie auf den Befehl reagiert node
, weil ich vermute, dass die Wahrscheinlichkeit von Störungen höher ist, wenn andere mit Node.js verbundene Programme versuchen, einen Anruf zu tätigen node
und keine Antwort erhalten.
Antwort4
Wer versucht, Node auf Ubuntu Vivid (Ubuntu BQ Tablet) zu installieren: Folgen Sie der Lösung von @bekce, achten Sie nur auf die Architektur Ihrer Maschine. Mein Tablet ist armhf
, also habe ich es heruntergeladen rlwrap
von armhf
:
wget https://launchpad.net/ubuntu/+source/rlwrap/0.41-1
und der Rest ist gleich:
sudo dpkg -i rlwrap_0.34-2_amd64.deb
sudo apt-get install nodejs