繁体   English   中英

在Mac OS X 10.8.2上安装Ruby

[英]Installing Ruby on Mac OS X 10.8.2

我提到了在Ruby on Rails安装Ruby-Mac OS Lion,并按照Alain Beauvois的回答进行了准备。 唯一的区别是我使用1.9.3而不是1.9.2。

我已经创建了.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权限/特权执行操作,对吗?

我有完全相同的错误,但我使用brew而不是MacPorts。 我要做的就是:

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

某些说明指出,我不必设置CC环境变量。 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

在红宝石开发人员建立兼容clang的红宝石版本之前,您必须在每次构建新的红宝石版本之前导出CC变量

刚发现这个 我认为这是您需要做的。

首先,如果尚未下载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而不需要Tk或Tcl来安装Ruby,而Tk或Tcl则需要X11(OSX 10.8除外)。 如果您想要诸如readline支持,OpenSSL之类的东西,请查看上面链接的要点。

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

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

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

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

$ export CC=gcc
$ rvm install 1.9.3

而且,尽管它说“ Ruby'ruby-1.9.3-p374'是使用clang构建的-但不(完全)受支持,但会出现错误。” - 有效。

在没有安装自制软件或Macports的ruby-1.9.3-p385上,这对我也有效。

export CC=gcc
rvm install 1.9.3

给出消息“ Ruby'ruby-1.9.3-p385'是使用clang构建的-但不(完全)受支持,请期待错误。” 完成任务后。

只是向列表添加另一个答案...我正在使用ruby-install,这对我有用:

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

我尝试了apple-gcc42CC=/usr/bin/gcc却没有任何运气,所以我不确定它们是否必要。 我正在使用rbenv管理器,因此这是尝试安装1.9.3-p385时适合我1.9.3-p385

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

此博客上找到它

记录:在Darwin Kernel Version 15.2.0上,适用于rbenvruby 1.9.3-p385gcc48brew install gcc48 )。 (在编译过程中有很多警告被我忽略了,到目前为止,ruby仍然可以正常工作)。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM