在Mac OS X 10.8.2上安装Ruby

我已经提到了安装Ruby on Rails – Mac OS Lion,并且遵循Alain Beauvois的回复 ,几乎所有的东西都变了。 唯一的区别是我使用1.9.3而不是1.9.2。

我创build了.bash_profile ,甚至确保在那里open -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权限/特权执行某些操作,对吧?

刚刚find了这个 。 我认为这是你需要做的。

首先,如果你还没有,下载MacPorts并安装它。 然后运行以下两个命令:

 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使用UNIX GCC来安装Ruby,而不需要Tk或Tcl,它们需要X11(不包括OSX 10.8)。 如果你想要readline support,OpenSSL等等,请查看上面的链接要点。

我有完全相同的错误,但使用酿造而不是MacPorts。 我所要做的只是:

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

我不需要像一些说明指出的那样设置CC环境variables。 HTH!

如果你使用rbenv和ruby-build而不是rvm,你必须这样做:

 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人build立一个铿锵兼容的ruby版本,你必须导出的CCvariables之前,每一个新的ruby版本

这也适用于OSX 10.8.2 + XCode 4.6的rbenv

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

但是知道自制软件可以安装另一个版本的gcc,如果苹果将来改变Xcode的命令行工具也是有用的。

我刚刚(在安装XCode命令行工具之后):

 $ export CC = gcc
 $ rvm install 1.9.3

虽然它说“Ruby ruby​​-1.9.3-p374”是用clang构build的,但是没有得到(完全)支持,期望出现错误。 – 有效。

这对我来说也适用于ruby-1.9.3-p385,没有安装自制软件或Macports。

 export CC=gcc rvm install 1.9.3 

给消息“ruby ruby​​-1.9.3-p385”是用clang构build的 – 但是没有(完全)支持,期望错误。 完成任务后。

只是为列表添加另一个答案…我使用ruby-install,这是对我有用:

 CC=/usr/local/bin/gcc-4.2 ruby-install ruby 1.9.3-p0 

我试过apple-gcc42CC=/usr/bin/gcc没有任何运气,所以我不知道他们是否有必要。 我正在使用rbenvpipe理器,所以当试图安装1.9.3-p385时,这是我的工作

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

在这个博客上find它

为了logging:在Darwin Kernel Version 15.2.0 ,使用rbenvruby 1.9.3-p385gcc48brew install gcc48Darwin Kernel Version 15.2.0 。 (编译过程中有很多警告,我忽略了,Ruby到目前为止工作正常)。

我只需要在rbenv install 1.9.3-p385之前设置CC=gcc-4.8