Wie setze ich den Standard auf Ruby 2.1.2?


12

Ich habe Ruby 1.9.3 und 2.1.2. Wenn ich das Terminal standardmäßig öffne, wird Ruby 1.9.3 verwendet, aber ich möchte Ruby 2.1.2 verwenden.

Wie kann ich Ruby 2.1.2 als Standard festlegen?

Antworten:


6

Sie sollten RVM installieren , um Ihre Ruby-Versionen zu verwalten. Um RVM zu installieren, gehen Sie wie folgt vor

sudo apt-get install zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2 libxml2-dev libxslt-dev gawk libgdbm-dev libncurses5-dev automake libtool bison libffi-dev nodejs
\curl -sSL https://get.rvm.io | bash -s stable

Wenn dies aus irgendeinem Grund nicht funktioniert, befolgen Sie die Anweisungen hier: /programming//a/9056395/2376036

Dann machen Sie den Standard 2.1.2 zu tun

rvm --default use 2.1.2

Hallo, vielen Dank für Ihre freundliche Hilfe. Ja, ich habe Ihre Anweisungen befolgt, aber im Terminal steht bei der Installation von rvm "broken rvm package please check stackoverflow.com/a/9056395/497756 ", also bin ich dem Pfad gefolgt und habe ihn abgerufen zum Erfolg, Vielen Dank für Ihre Hilfe
Rasool

Ich bin froh, dass ich helfen konnte. Bitte markieren Sie meine Antwort als akzeptiert, damit die Leute in Zukunft wissen, was für Sie gearbeitet hat. Ich werde den zusätzlichen Kontext aus Ihrem Kommentar in meine Antwort einfügen.
Termhn

19

/usr/bin/rubyist in der Regel ein Link zu /etc/alternatives/ruby, der wiederum auf die ausführbare Datei der Standard-Ruby-Version verweist (zB /usr/bin/ruby1.9). Sie können die konfigurierte Standardversion folgendermaßen ändern:

sudo update-alternatives --config ruby

Wenn sich die gewünschte Version nicht selbst als Alternative eingerichtet hat ruby(z. B. wenn sie nicht vom Paketmanager eingerichtet wurde), können Sie dies selbst tun

sudo update-alternatives --install /usr/bin/ruby ruby /path/to/ruby2.1 <PRIORITY>

wo <PRIORITY>ist eine positive ganze Zahl. Dann können Sie den ersten Schritt ausführen.

Einzelheiten finden Sie im Handbuch vonupdate-alternatives(8) .


5

Unter Ubuntu 14.04 können Sie das ruby2.0Paket installieren . Derzeit bietet das Paket die Version 2.0.0p384 (möglicherweise bietet das Paket Ruby 2.1 oder neuer). So einfach installieren Sie Ruby-Binärdateien:

sudo apt install ruby2.0

Dann haben Sie Binärdateien ruby2.0und gem2.0. Zum Ersetzen des Standard-Ruby 1.9 durch 2.0 können Sie Folgendes tun ( HINWEIS: Sie können Anwendungen unterbrechen, für die Ruby <= 1.9 unbedingt erforderlich ist).

sudo update-alternatives --set /usr/bin/ruby ruby /usr/bin/ruby2.0 10
sudo update-alternatives --set /usr/bin/gem gem /usr/bin/gem2.0 10

Andere Möglichkeiten sind die Verwendung von Ruby-Versionsmanagern wie rbenv oder RVM . Das erste ist komplizierter einzurichten, aber weniger hackig als RVM. Beide erlauben die Installation nahezu jeder Ruby-Version, die Sie verwenden möchten.


1
Sind Sie sicher, dass der Schalter --install korrekt ist? stackoverflow.com/a/1892889/525174 answer hat mir geholfen, aber der einzige Unterschied ist, dass der Schalter --set verwendet wird.
Denis Besic

@Tombart In Ihrem Code ist ein Fehler aufgetreten.
HoraceT

@horaceT Könnten Sie genauer sein? Sind Sie sicher, dass Sie dieselbe Ubuntu-Version verwenden?
Tombart

@Tombart Ich habe deine erste Zeile kopiert und eingefügt. Hier ist der Fehler: update-alternatives: error: alternative name (/usr/bin/ruby) must not contain '/' and spacesIch habe Ubuntu 14.04
HoraceT

3

Wenn Sie Ubuntu 14.04 (Trusty) oder neuer verwenden, können Sie diese PPA hinzufügen:

sudo apt-get install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update

Dann können Sie zum Beispiel jedes gewünschte Paket installieren

sudo apt-get install ruby2.2

Um native Erweiterungen erstellen zu können, müssen Sie auch ein Entwicklungspaket erstellen

sudo apt-get install ruby2.2-dev

Um einfach zwischen installierten Ruby-Versionen zu wechseln, installieren Sie den Ruby-Schalter:

sudo apt-get install ruby-switch

Befehle von Nutzen

ruby -v
ruby-switch --list

Beispiel

sudo ruby-switch --set ruby2.1

Von: https://www.brightbox.com/docs/ruby/ubuntu/

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.