web-dev-qa-db-ja.com

Mac OS X 10.8.2にRubyをインストールする

私は Installing Ruby on Rails-Mac OS Lion を参照し、その後 Alain Beauvoisの返信 および唯一の違いは、1.9.2ではなく1.9.3を使用していることです。

私が作成しました .bash_profileopen -e .bash_profileと、Alain Beauvoisが述べた行を追加しました。

しかし、現在問題となっているように見えるのは、このエラーが発生していることです。

Error running 'make', please read /usr/local/rvm/log/Ruby-1.9.3-p374/make.log
There has been an error while running make. Halting the installation.

参照されたログにはこれが含まれます:

[2013-02-02 21:41:52] make
    CC = clang
    LD = ld
    LDSHARED = clang -dynamic -bundle
    CFLAGS = -O3 -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=shorten-64-to-32 -Werror=implicit-function-declaration  -pipe 
    XCFLAGS = -include Ruby/config.h -include Ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT
    CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -I/usr/local/rvm/usr/include -I. -I.ext/include/x86_64-darwin12.2.1 -I./include -I.
    DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace  
    SOLIBS = 
compiling regparse.c
regparse.c:582:15: error: implicit conversion loses integer precision: 'st_index_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
    return t->num_entries;
    ~~~~~~ ~~~^~~~~~~~~~~
1 error generated.
make: *** [regparse.o] Error 1

私も試しました

rvm -install Ruby-1.9.3-p374

しかし、それでも同じエラーが発生します。この部分に到達する前に奇妙なエラーが発生しましたが、その前にSudoを追加して再実行した後、それは機能しました。 AFAIK、Sudo = su権限/特権を使用して何かをしている、そうですか?

35
Nil

見つかったばかり this 。これはあなたがする必要があることだと思います。

まず、まだインストールしていない場合は、 MacPorts をダウンロードしてインストールします。次に、次の2つのコマンドを実行します。

Sudo port selfupdate
Sudo port install Apple-gcc42

実際のUNIX GCCを取得しすぎています。次に、1.9.3をインストールするには、次を実行します。

CC=/opt/local/bin/gcc-Apple-4.2 rvm install Ruby-1.9.3-p194 --enable-shared --without-tk --without-tcl

これは、rvmにインストールを指示するRuby X11を必要とするTkまたはTclなしのUNIX GCCを使用する(OSX 10.8は省略)。readlineサポート、OpenSSLなどが必要な場合は、上記を確認してください。リンクされた要旨。

18
Linuxios

まったく同じエラーがありましたが、MacPortsの代わりにbrewを使用しています。私がしなければならなかったすべては:

brew update
brew tap homebrew/dupes
brew install Apple-gcc42
rvm get stable
rvm install 1.9.3-p374

いくつかの指示が示すように、CC環境変数を設定する必要はありませんでした。 HTH!

31
Preston Lee

Rvmの代わりにrbenvとRuby-buildを使用している場合は、次のようにする必要があります。

env CC=gcc rbenv install 1.9.3-p392

これが機能しない場合は、これを試してください:

# this export must be done before every new Ruby build
export CC=gcc
# use the version you wish to install
rbenv install 1.9.3-p392

動作しない場合は、最初にgccをインストールする必要があります。

brew update
brew tap homebrew/dupes
# install Apple-gcc, only once needed
brew install Apple-gcc42

Rubyがclang互換のRubyバージョンをビルドするまで、新しいRubyバージョンをビルドする前にCC変数をエクスポートする必要があります

20
Fa11enAngel

これはOSX 10.8.2 + XCode 4.6のrbenvでも機能しました

$ export CC=gcc
$ rbenv install 1.9.3-p385 -v

Appleが将来Xcodeのコマンドラインツールを変更する場合、homebrewが別のバージョンのgccをインストールできることを知ることも役立ちます。

3
wlads

私はちょうど(XCodeコマンドラインツールをインストールした後):

 $ export CC = gcc 
 $ rvm install 1.9.3 

また、「Ruby 'Ruby-1.9.3-p374'はclangを使用して構築されていますが、(完全に)サポートされていないため、エラーが発生します。」 - 出来た。

1
Roman

リストに別の回答を追加するだけです...私はRuby-installを使用していますが、これは私にとってうまくいきました:

CC=/usr/local/bin/gcc-4.2 Ruby-install Ruby 1.9.3-p0
1
bricker

これは、自作またはMacportsがインストールされていないRuby-1.9.3-p385でも動作しました。

export CC=gcc
rvm install 1.9.3

「Ruby 'Ruby-1.9.3-p385'はclangを使用して構築されましたが、(完全に)サポートされていないため、エラーが発生します。」というメッセージが表示されました。タスク完了後。

1
stonefruit

私は試した Apple-gcc42およびCC=/usr/bin/gcc運がないため、必要かどうかはわかりません。私はrbenvマネージャーを使用しているので、これをインストールしようとしたときに1.9.3-p385

brew install readline
CONFIGURE_OPTS="--with-readline-dir=$(brew --prefix readline)" rbenv install 1.9.3-p385

このブログ で見つけました

0
cwd

記録のために:rbenvRuby 1.9.3-p385gcc48brew install gcc48) オン Darwin Kernel Version 15.2.0。 (私が無視したたくさんの警告がコンパイル中にありました、Rubyこれまでのところうまくいきます)。

CC=gcc-4.8rbenv install 1.9.3-p385

0
Kashyap