Nodejs: Hängt ab von: rlwrap, ist aber nicht installierbar

Nodejs: Hängt ab von: rlwrap, ist aber nicht installierbar

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 nodejsbekomme 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:

  1. Herunterladen rlwrapvonhttp://packages.ubuntu.com/trusty/rlwrap. Hier ist einDirekte Verbindung
  2. Es installierensudo dpkg -i rlwrap_0.34-2_amd64.deb
  3. Installieren Sie nodejssudo apt-get install nodejs

Antwort2

  1. Universe-Repository aktivierensudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
  2. reparieren und aktualisierensudo dpkg --configure -a && sudo apt-get update && sudo apt-get -y upgrade
  3. 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, nodejswo 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 nodeund 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 rlwrapvon 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

verwandte Informationen