Mit Ruby können keine Edelsteine ​​installiert werden: "Ungültige Bytefolge in UTF-8"

2

Ich benutze Mountain Lion. Ich habe Ruby zuerst mit RVM und dann mit rbenv installiert . Ich kann versichern, dass es mit der neuesten Version läuft which ruby, es zeigt korrekt auf die mit rbenv installierte .

gem installiert kein gem, es gibt mir immer den gleichen fehler (nicht immer in der gleichen datei, aber den gleichen fehler mit split:

Users/Macbook/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/mkmf.rb:1357:in `split': invalid byte sequence in UTF-8 (ArgumentError)
    from /Users/Macbook/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/mkmf.rb:1357:in `find_executable0'
    from /Users/Macbook/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/mkmf.rb:1564:in `pkg_config'
    from extconf.rb:15:in `<main>'

Ich habe versucht, diese Exporte in meinem einzurichten .profile, ohne Glück:

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

Ich habe auch bash mit brew aktualisiert und es mit chsh aktiviert . iTerm2 ist auch mit UTF-8-Codierung korrekt konfiguriert.

Ich habe keine Ahnung, was ich jetzt noch tun soll. Ich habe XCode 4.6.3.

Cristian
quelle
Haben Sie versucht, rbenv anstelle von rvm zu verwenden? Ich hatte auch einige Probleme mit rvm, aber bisher keine mit rbenv
jmoreira
Ja, die gleichen Ergebnisse.
Cristian

Antworten:

0

Das Problem war gelöst Aufräumen alle Dateien mit der Einrichtung der zugehörigen PATHUmgebungsvariablen ( .bash_profile, .profile, .bashrc) und dann die Installation rvmerneut. Das Ausführen von echo $PATHenthüllte ein seltsames Zeichen, das die Verarbeitung des Bündlers durchbrach PATH.

Cristian
quelle
0

Ich habe 64-Bit-Cygwin, Ruby 2.0.0 und Gem 2.4.1 und hatte das gleiche Problem. gem install ..., gem update, Alles endete mit " ERROR: Während gem Ausführen ... (Argument) ungültige Bytefolge in UTF-8 ".

Ich hatte auch alle Locales auf " en_US.UTF-8 " gesetzt.

Ich habe irgendwo gelesen, dass es helfen sollte LANG, einen leeren String oder " C.BINARY " zu setzen, aber es hat nicht geholfen. Aber es war ein guter Hinweis, um zu experimentieren.

Zum Schluss habe ich das gelöst, indem ich beide LANGund LC_ALLeine leere Zeichenkette gesetzt habe. Alle anderen Umgebungsvariablen des Gebietsschemas ( LC_CTYPEusw.) wurden dadurch automatisch auf "C.UTF-8" gesetzt LANGund LC_ALLblieben leer.

Jetzt klappt gemes endlich.

Ich denke, du hattest den gleichen Grund. Wenn Sie Ihre Punktedateien "bereinigt" haben, haben sich wahrscheinlich die Werte Ihrer Ländereinstellungen geändert.

Dawid Ferenczy Rogožan
quelle