Rubyでgemをインストールすることはできません:“ UTF-8のバイトシーケンスが無効です”


2

私はMountain Lionを使っています。私は最初にRVMで、次にrbenvで Rubyをインストールしました。私はそれがで最新のものを実行していることを保証することができますwhich ruby、それは正しくrbenvでインストールされたものを指しています。

gemgemをインストールすることはありません、いつも同じエラーを私に投げます(いつも同じファイルにあるわけではありませんが、同じエラーには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>'

私は.profile運なしで、私の中でこれらの輸出を設定しようとしました:

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

私はまた、更新しましたbashの醸造とし、そしてそれを活性化CHSH。iTerm2はUTF-8エンコーディングでも正しく設定されています。

私は今他に何をすべきかわかりません。私はXcode 4.6.3を持っています。


rvmの代わりにrbenv を使ってみましたか?私はまたrvmを使用していくつかの問題がありましたが、今のところrbenvを使用しているものはありません
jmoreira

はい、同じ結果です。
クリスチャン

回答:


0

問題は、の設定を上にして関連するすべてのファイル掃除解決されたPATH環境変数を(.bash_profile.profile.bashrc)、その後、インストールrvmを再度。を実行すると、echo $PATHバンドラーの処理が壊れた変な文字が明らかになりましたPATH


0

私は64ビットのCygwin、Ruby 2.0.0、gem 2.4.1を持っていて同じ問題を経験していました。gem install ...エラーgem updateはすべて「エラー:gem ...(ArgumentError)の実行中に無効なバイトシーケンス(UTF-8)」で終了しました。

また、すべてのロケールを " en_US.UTF-8 "に設定しました。

LANG空の文字列または " C.BINARY " に設定すると効果的であることをどこかで読みましたが、役に立ちませんでした。しかし、実験を始めるのは良いヒントでした。

最後に、両方LANGLC_ALLを空の文字列に設定することでこれを解決しました。他のすべてのロケールの環境変数(LC_CTYPEなど)が、自動的にそのことで「C.UTF-8」に設定し、たLANGLC_ALL空に残りました。

gemやっとうまくいっています。

私はあなたが同じ理由を持っていたと思います。ドットファイルを「きれいに」したとき、あなたのロケールのおそらく変更された値。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.