Osx mavericksにアップグレードしたばかりで、Ruby 2.0をインストールしたいのですが、configure: error: cannot run C compiled programs.
エラーが発生します。
Rvmをrvm get stable
で更新してから、rvm install 2.0.0
と入力すると、ログファイルに移動するように指示するエラーが発生します。ログファイルには次のものが含まれます。
configure: WARNING: unrecognized options: --without-tcl, --without-tk
checking build system type... x86_64-Apple-darwin13.0.0
checking Host system type... x86_64-Apple-darwin13.0.0
checking target system type... x86_64-Apple-darwin13.0.0
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in `/Users/mattroberts/.rvm/src/Ruby-2.0.0-p247':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--Host'.
See `config.log' for more details
だから、私は持っているバージョンをリストしてみました。 1.9.3-p392
があると表示されるので、それをアンインストールしてから再インストールして、それが機能するかどうかを確認します。同じエラーです。
Xcodeを再インストール/更新する必要がありますか、それとも別の解決策がありますか?
ありがとう!
Mavericksにアップグレードした後にXcodeをアップグレードしていない場合は、アップグレードする必要があります。その後、コマンドプロンプトを開き、次のように入力します。xcode-select --install
これにより、OSXアップデートによって削除されたxcodeコマンドツールがインストールされます。その後は問題なく動作するはずです。
提案された解決策は私の問題を解決しませんでした(最新バージョンのXCode、インストールされたコマンドラインツール)。 rvm install Ruby-1.9.3 --with-gcc=clang
を使用しましたが、うまくいきました。
RvmはデフォルトでOSXにclangを使用していたと思いました。間違ったことや何かが変わったことを覚えているかどうかはわかりません/これはもはや最善の方法ではありません。それにもかかわらず、それは私のためにインストールを機能させました。
Eduのコメントの後、 github rvm issue page 彼が参照した警告:
@marksands何をしているのかを確認してください、Ruby 1.9.3 clangでコンパイルすると「安全」ではなく、セグメンテーション違反が発生する可能性があります。スレッド関連の問題が予想されます。Rubyの再インストールを検討してください。 _ --with-gcc = gcc42またはrvmにgcc4.6をインストールさせるだけで、Ruby2.0.0のみがclangと完全に互換性があります
この問題 マーベリックスのgcc46の問題を指摘しています:
問題のgemは異なる言語を使用しています-C/C++ではなく、Objective-Cを使用しています-したがって、コンパイラのせいではありません。Objective-Cをサポートしてgcc-4.6をビルドできます-デフォルトでは実行されません。
現在、2つのオプションがあります。どちらもuninstallig gcc-4.6で始まり、次のようになります。
•Apple-gcc42をインストールします
•--enable-objcを指定してgcc-4.6をインストールします
これは修正されるはずです、実行します:
rvm get head
rvm remove 1.9.3
rvm install 1.9.3
余分なフラグを使用しないでください
最終的に私のために働いたのは、XCodeをインストールすることでした次にXcodeを実行するそして再インストールを試みました。
ランニング
rvm_configure_env=('LDFLAGS=-L/opt/sm/pkg/active/lib' 'CFLAGS=-I/opt/sm/pkg/active/include' 'CPATH=/opt/sm/pkg/active/include')
Mavericksでのコンパイラの問題を修正しました
unset SDKROOT
これは私のために働いた。あなたにもそうなることを願っています。
Xcode開発者ツールと一緒にxcodeを再インストールしようとしました。動作しませんでした。同じエラー。
env -i bash —noprofile —norc
で実行して、env変数が問題の原因であるかどうかを確認してください。
まったく同じ問題が発生しました(10.8.5で、すべて最新)。 Ruby 2.0.0は正常にインストールされましたが、1.9.3ではありませんでした。このソリューションは私にとってはうまくいきました。
Rubyパス(config.logにあります)にcdしてから、.configure
を発行します(config.logにあるすべてのオプションを使用)
make
make install
次に:
rvm use 1.9.3 --create