在Yosemite上安装Ruby 1.9.2时出错

时间:2014-10-17 03:30:42

标签: ruby-on-rails ruby osx-yosemite

我在Yosemite上使用rvm安装ruby 1.9.2时遇到错误。有人能帮助我吗?我更新了homebrew和rvm。我在这个项目上与其他人合作,所以我无法升级ruby。我在下面输入了我的输出。提前谢谢!

Kanyons-MacBook-Pro:~ USERNAME$ rvm install 1.9.2-head
ruby-1.9.2-head - #removing src/ruby-1.9.2-head..
Checking requirements for osx.
Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date.
Requirements installation successful.
Installing Ruby from source to: /Users/USERNAME/.rvm/rubies/ruby-1.9.2-head, this may take a while depending on your cpu(s)...
HEAD is now at 5d9f08f bump patchlevel
From git://github.com/ruby/ruby
 * branch            ruby_1_9_2 -> FETCH_HEAD
Current branch ruby_1_9_2 is up to date.
Copying from repo to src path...
ruby-1.9.2-head - #applying patch /Users/USERNAME/.rvm/patches/ruby/1.9.2/head/r42282.patch.
ruby-1.9.2-head - #applying patch /Users/USERNAME/.rvm/patches/ruby/ssl_no_ec2m.patch.
ruby-1.9.2-head - #autoreconf.
ruby-1.9.2-head - #configuring..........................................
ruby-1.9.2-head - #post-configuration.
ruby-1.9.2-head - #compiling..................
Error running '__rvm_make -j 1',
showing last 15 lines of /Users/USERNAME/.rvm/log/1413513694_ruby-1.9.2-head/make.log
generating newline.c ...
converter for universal_newline
converter for crlf_newline
converter for cr_newline
done.  (0.06user 0.00system 0.01elapsed)
/usr/local/opt/apple-gcc42/bin/gcc-4.2 -O3 -I/usr/local/opt/readline/include -I/usr/local/opt/libksba/include -I/usr/local/opt/openssl/include -fno-common -pipe -I. -I.ext/include/x86_64-darwin14.0.0 -I./include -I.        -DRUBY_EXPORT -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -o newline.o -c newline.c
couldn't understand kern.osversion `14.0.0'
/usr/local/opt/apple-gcc42/bin/gcc-4.2 -O3 -I/usr/local/opt/readline/include -I/usr/local/opt/libksba/include -I/usr/local/opt/openssl/include -fno-common -pipe -I. -I.ext/include/x86_64-darwin14.0.0 -I./include -I. -DRUBY_EXPORT -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -o dmyext.o -c dmyext.c
couldn't understand kern.osversion `14.0.0'
/usr/local/opt/apple-gcc42/bin/gcc-4.2 -O3 -I/usr/local/opt/readline/include -I/usr/local/opt/libksba/include -I/usr/local/opt/openssl/include -fno-common -pipe -L. -L/usr/local/opt/readline/lib         -L/usr/local/opt/libksba/lib -L/usr/local/opt/openssl/lib -Wl,-u,_objc_msgSend   main.o dmydln.o dmyencoding.o dmyversion.o miniprelude.o array.o bignum.o class.o compar.o complex.o dir.o dln_find.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o inits.o io.o marshal.o math.o node.o numeric.o object.o pack.o parse.o process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o strftime.o string.o struct.o time.o transcode.o util.o variable.o compile.o debug.o iseq.o vm.o vm_dump.o thread.o cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o  dmyext.o -lpthread -ldl -lobjc  -o miniruby
couldn't understand kern.osversion `14.0.0'
miniruby(65084,0x7fff7bed0300) malloc: *** error for object 0x100801a08: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
make: *** [.rbconfig.time] Abort trap: 6
++ return 2
There has been an error while running make. Halting the installation.

3 个答案:

答案 0 :(得分:0)

我没有得到最好的答案,但似乎它是OSX处理GCC ......或其他方式的错误。我找到了一个提及补丁的帖子,以及如何在此处安装补丁:https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61407

我还没有完成它,但是我即将完成并且我会报告回来。不确定这是否是"答案"说,但这也是我的问题,我需要解决这个问题!

编辑:没有一个补丁工作(可能是因为我不知道如何安装它们,但是在我的终端中运行这一行,然后执行rvm install 1.9.2似乎有效:

export PATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH

取自这个答案:How to use/install gcc on Mac OS X 10.8 / Xcode 4.4

答案 1 :(得分:0)

您是否尝试过RBENV?

https://github.com/sstephenson/rbenv

如果您在本机系统上安装内容时遇到问题,则可以 总是尝试使用Vagrant构建VM,也适合部署。

我将它用于拥有较旧ROR应用程序的客户端。使共享开发环境变得容易。

https://www.vagrantup.com/

答案 2 :(得分:-1)

对于那些试图在Yosemite上安装ruby 1.9.2的人来说,没有任何修复方法。我安装了1.9.3并且效果很好。

有关为什么1.9.2无法正确编译的更多信息,请使用下面的Github上的错误报告。

https://github.com/wayneeseguin/rvm/issues/3096#issuecomment-59797969 https://github.com/wayneeseguin/rvm/issues/3099#issuecomment-60187208