Sie sagen, Sie haben Ruby 2.2.0 installiert, aber wenn Sie sich den Fehler ansehen, beziehen sich alle Referenzen darauf, /Library/Ruby/Gems/1.8/gems/
was bedeutet, dass SoundCloud 2000 als Ruby 1.8-GEM installiert ist. Meine Vermutung ist jedoch, dass Sie Ruby 2.2.0 installiert haben, das nicht das Hauptprogramm ist, das ruby
Sie von der Befehlszeile aus ausführen. Sie können die Version von Ruby, die Sie auf Ihrem Mac ausführen, mit dem folgenden Befehl bestätigen:
ruby -v
Die Ausgabe sollte ungefähr so sein; Hinweis: Ich verwende Mac OS X 10.9.5, daher wird meine installierte Version von Ruby höher sein als Mac OS X 10.8.5:
ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin13]
Sie können auch sehen, von wo aus Ihre Version von Ruby geladen wird which
:
which ruby
Die Ausgabe sollte ungefähr so aussehen:
/usr/bin/ruby
Das which
Tool sagt Ihnen genau, von welchem Pfad die Binärdatei, die Sie über diesen Befehl aufrufen, geladen wird.
Da es so aussieht, als würden Sie Homebrew verwenden, um eine neuere Version von Rub zu installieren, müssen Sie auch sicherstellen, dass Ihr Benutzer vor der Überprüfung $PATH
eine Überprüfung /usr/local/bin
vornimmt /usr/bin
. Dies wird normalerweise in der .bash_profile
Datei in Ihrem Home-Verzeichnis festgelegt, die sich über befindet ~/.bash_profile
. Beachten Sie nur, dass dieses Zeug könnte auch in einer Datei mit dem Namen gesetzt werden .bashc
, so stellen Sie die Beispiele zu verwenden, .bashc
statt, .bash_profile
wenn das der Fall ist .
Wenn ich beispielsweise den folgenden Befehl in meinem Mac OS X-Setup ausführe:
cat ~/.bash_profile
Ich sehe diesen Inhalt:
export PATH="/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/opt/ImageMagick/bin"
Könnte komplex aussehen, ist es aber nicht. Dieser Befehl kann nur die $PATH
Einstellungen für Ihre Shell-Umgebung festlegen . Die Elemente zwischen den Anführungszeichen sind lediglich Verzeichnispfade, die durch :
Zeichen getrennt sind . Beachten Sie dies die Reihenfolge von /usr/bin
versus /usr/local/bin
; einer kommt vor den anderen. Was im Grunde bedeutet, dass das System für die Überprüfung wird ruby
in /usr/bin
und es vorziehen, dass man verwenden, bevor sie sogar die erreicht ruby
über installiert /usr/local/bin
. Eine schnelle Lösung für Sie wäre es also, /usr/local/bin
diese /usr/bin
über einen Texteditor wie nano
. Dann speichern Sie es, beenden Sie Ihre Terminalsitzung und öffnen Sie eine neue.
Wenn ich Sie wäre, würde ich jedoch empfehlen, die Installation von Ruby und Ruby GEM auf Systemebene über Homebrew zu vermeiden und stattdessen RVM (Ruby Version Manager) zu verwenden. Ruby - und Ruby GEMs - können an einem guten Tag tatsächlich ein Problem sein. und noch schlimmer Kopfschmerzen auf einem Mac. Wenn Sie stattdessen RVM verwenden, können Sie isolierte Ruby- und Ruby-GEM-Installationen erstellen, die für Ihren Benutzer spezifischer sind und die einfacher zu verwalten sind.
Ich mache Linux-Systemadministration und möchte in der Regel die Version von Ruby aktualisieren, die standardmäßig installiert ist und die dazu über Quell- oder Paketinstallationsprogramme verwendet wird. Aber je mehr Arbeit ich mit Ruby-Setups habe, desto mehr wurde mir klar, dass RVM wirklich die beste Möglichkeit ist, um Ruby-Setups zu installieren, zu verwalten und damit umzugehen. Eine leichte Lern- / Verständniskurve, wenn Sie es zum ersten Mal einrichten, aber es wird Ihnen das Leben und die Systemverwaltung leichter machen.