我试图以这种方式安装它:
brew install autoconf brew install automake brew install libyaml rvm 安装ruby-head
我试图用rvm安装ruby2,但是我收到了这个错误:
ruby-head - #compiling运行'make'时出错,请阅读 /Users/boti/.rvm/log/ruby-head/make.log发生错误的同时发生错误 跑步。暂停安装。 Ruby'ruby-head'正在构建 使用clang - 但它没有(完全)支持,期望错误。
这是我的编译日志:
编译./missing/setproctitle.c编译dmyext.c链接miniruby /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:111: [BUG] Stack 一致性错误(sp:38,bp:36)ruby 2.0.0dev(2013-02-25) [x86_64的-darwin12.2.0]
- 崩溃报告日志信息----------------------------------------- ---请参阅下面的崩溃报告日志文件: *〜/ Library / Logs / CrashReporter * / Library / Logs / CrashReporter *〜/ Library / Logs / DiagnosticReports * / Library / Logs / DiagnosticReports更详细的信息。
- 控制框架信息------------------------------------------ ----- c:0006 p:0038 s:0038 e:000037 CLASS /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:111 c:0005 p:0035 s:0034 e:000033 CLASS /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:107 c:0004 p:0009 s:0032 e:000031 TOP
/Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:85 [完] c:0003 p:---- s:0030 e:000029 CFUNC:require c:0002 p:0098 s:0026 E:000f88 EVAL ./tool/mkconfig.rb:11 [完成] c:0001 p:0000 s:0002 E:0017a8 TOP [FINISH]./ tool / mkconfig.rb:11:in
<main>' ./tool/mkconfig.rb:11:in
require' /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:85:in<top (required)>' /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:107:in
' /Users/boti/.rvm/src/ruby-head/lib/fileutils.rb:111:in `'- 其他运行时信息------------------------------------------ -----
已加载的脚本:./ tool / mkconfig.rb
已加载的功能:
0 enumerator.so
[注意]您可能在Ruby解释器中遇到过错误或 扩展库。欢迎提供错误报告。详情如下: http://www.ruby-lang.org/bugreport.html
make: * [.rbconfig.time]中止陷阱:6
这是我编译日志的开始:
[2013-02-24 20:58:47] make CC = /usr/bin/gcc-4.2 LD = ld LDSHARED = /usr/bin/gcc-4.2 -dynamiclib CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field- initializers -Wunused-variable -Werror = pointer-arith -Werror = write-strings -Werror = declaration-after-statement -Werror = shorten-64-to -Werror = implicit-function-declaration -fno-common -pipe XCFLAGS = -include ruby / config.h -include ruby / missing.h -D_FORTIFY_SOURCE = 2 -fstack-protector -fno-strict-overflow -fvisibility = hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -I。 -I.ext / include / x86_64-darwin12.2.0 -I./include -I。 DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -install_name /Users/boti/.rvm/rubies/ruby-head/lib/libruby.2.0.0.dylib -current_version 2.0.0 -compatibility_version 2.0.0 -fstack-protector -Wl,-u,_objc_msgSend -fstack-protector -Wl,-u,_objc_msgSend SOLIBS =
我很感激任何帮助...
答案 0 :(得分:6)
试试这个:
CC=clang rvm reinstall 2.0.0-p0
它会编译,但可能会导致其他错误(我正在努力寻找导致原始问题的原因)。
答案 1 :(得分:0)
我在使用XCode 4.6和brew的Mac OS X 10.8.2上遇到miniruby的构建错误。
当试图运行“rvm install 2.0.0”时,结果如下所示:
https://gist.github.com/polarapfel/5080946
尝试将CC设置为/ usr / bin / clang时,结果如下所示:
https://gist.github.com/polarapfel/5081054
无论哪种方式,结果对我来说都是一样的。
这是有趣的事情:我可以毫无问题地建立头脑。我认为2.0.0p0在Mac OS X上不是一个干净的版本,需要更多的工作来解决问题。
-
好的,这对我来说是这样的:只需运行“rvm get stable”就可以摆脱构建问题。
答案 2 :(得分:0)
确保你使用了clang-v的clang 3.0 否则,如果您使用的是较旧的clang版本,请使用:
使用gcc 4.2编译2.0.0-p0rvm install ruby --with-gcc=gcc-4.2
我会首先删除旧的红宝石尝试:
rvm remove 2.0.0-p0
还要确保你有rvm头(不稳定):
rvm get head --autolibs=3
如果这应该解决miniruby / enc编译问题,那么2.0.0-p0是一个干净的构建,但你使用的是过时的编译器。安装最新的Xcode并不一定包含最新的版本。