如何在OSX Lion上安装(构建)Ruby 1.9.3?

我一直在努力在我的mac,OSX Lion上安装Ruby。 我已经安装了XCode,GCC,Readline,Homebrew和JewleryBox,但我不知道发生了什么。 有什么指针吗?

这是我的终端所说的?

hugo-pc:ruby-1.9.3-p125 squantowalks$ rvm install 1.9.3 Fetching yaml-0.1.4.tar.gz to /Users/squantowalks/.rvm/archives Extracting yaml-0.1.4.tar.gz to /Users/squantowalks/.rvm/src Error running 'tar xmzf /Users/squantowalks/.rvm/archives/yaml-0.1.4.tar.gz -C /Users/squantowalks/.rvm/src ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/extract.log Configuring yaml in /Users/squantowalks/.rvm/src/yaml-0.1.4. Error running ' ./configure --prefix="/Users/squantowalks/.rvm/usr" ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/configure.log Compiling yaml in /Users/squantowalks/.rvm/src/yaml-0.1.4. Error running 'make ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/make.log Installing Ruby from source to: /Users/squantowalks/.rvm/rubies/ruby-1.9.3-p125, this may take a while depending on your cpu(s)... ruby-1.9.3-p125 - #fetching ruby-1.9.3-p125 - #extracted to /Users/squantowalks/.rvm/src/ruby-1.9.3-p125 (already extracted) ruby-1.9.3-p125 - #configuring ruby-1.9.3-p125 - #compiling Error running 'make ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/make.log There has been an error while running make. Halting the installation. 

这是控制台日志:

 [2012-03-08 18:20:17] make CC = clang LD = ld LDSHARED = clang -dynamiclib -O3 -ggdb -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 -fno-common -pipe -L. -L/usr/local/lib CFLAGS = -O3 -ggdb -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 -fno-common -pipe XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I. -I.ext/include/x86_64-darwin11.3.0 -I./include -I. DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -install_name /Users/squantowalks/.rvm/rubies/ruby-1.9.3-p125/lib/libruby.1.9.1.dylib -current_version 1.9.1 -compatibility_version 1.9.1 -Wl,-unexported_symbol,_Init_* -Wl,-unexported_symbol,*_threadptr_* -Wl,-u,_objc_msgSend SOLIBS = linking miniruby :1: [BUG] Bus Error ruby 1.9.3p125 (2012-02-16 revision 34643) [universal.x86_64-darwin11.3.0] -- Control frame information ----------------------------------------------- c:0003 p:0002 s:0006 b:0006 l:000005 d:000005 TOP :1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:0025e8 d:0025e8 TOP -- Ruby level backtrace information ---------------------------------------- :1:in `' -- C level backtrace information ------------------------------------------- See Crash Report log file under ~/Library/Logs/CrashReporter or /Library/Logs/CrashReporter, for the more detail of. -- Other runtime information ----------------------------------------------- * Loaded script: ./miniruby * Loaded features: 0 enumerator.so [NOTE] You may have encountered a bug in the Ruby interpreter or extension libraries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html make: *** [.rbconfig.time] Abort trap: 6 

谢谢 :)

编辑:安装macports和苹果的4.2 gcc(谢谢你们)后,我得到了这个:

 hugo-pc:bin squantowalks$ CC=/opt/local/bin/gcc-apple-4.2 rvm install 1.9.3Fetching yaml-0.1.4.tar.gz to /Users/squantowalks/.rvm/archives Extracting yaml-0.1.4.tar.gz to /Users/squantowalks/.rvm/src Error running 'tar xmzf /Users/squantowalks/.rvm/archives/yaml-0.1.4.tar.gz -C /Users/squantowalks/.rvm/src ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/extract.log Configuring yaml in /Users/squantowalks/.rvm/src/yaml-0.1.4. Error running ' ./configure --prefix="/Users/squantowalks/.rvm/usr" ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/configure.log Compiling yaml in /Users/squantowalks/.rvm/src/yaml-0.1.4. Error running 'make ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/yaml/make.log Installing Ruby from source to: /Users/squantowalks/.rvm/rubies/ruby-1.9.3-p125, this may take a while depending on your cpu(s)... ruby-1.9.3-p125 - #fetching ruby-1.9.3-p125 - #extracted to /Users/squantowalks/.rvm/src/ruby-1.9.3-p125 (already extracted) ruby-1.9.3-p125 - #configuring ruby-1.9.3-p125 - #compiling Error running 'make ', please read /Users/squantowalks/.rvm/log/ruby-1.9.3-p125/make.log There has been an error while running make. Halting the installation. 

这是控制台日志:

 [2012-03-08 20:05:01] make CC = /opt/local/bin/i686-apple-darwin11-gcc-apple-4.2.1 LD = ld LDSHARED = /opt/local/bin/i686-apple-darwin11-gcc-apple-4.2.1 -dynamiclib -O3 -ggdb -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 -fno-common -pipe -L. -L/usr/local/lib CFLAGS = -O3 -ggdb -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 -fno-common -pipe XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I. -I.ext/include/i386-darwin11.3.0 -I./include -I. DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -install_name /Users/squantowalks/.rvm/rubies/ruby-1.9.3-p125/lib/libruby.1.9.1.dylib -current_version 1.9.1 -compatibility_version 1.9.1 -Wl,-unexported_symbol,_Init_* -Wl,-unexported_symbol,*_threadptr_* -Wl,-u,_objc_msgSend SOLIBS = linking miniruby ld: warning: ignoring file dmyext.o, file was built for unsupported file format which is not the architecture being linked (i386) Undefined symbols for architecture i386: "_Init_ext", referenced from: _require_libraries in ruby.o ld: symbol(s) not found for architecture i386 collect2: ld returned 1 exit status make: *** [miniruby] Error 1 make: *** [miniruby] Error 1 he architecture being linked (x86_64) ld: warning: ignoring file miniprelude.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file array.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file bignum.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file class.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file compar.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file complex.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file dir.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file dln_find.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file enum.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file enumerator.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file error.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file eval.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file load.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file proc.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file file.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file gc.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file hash.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file inits.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file io.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file marshal.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file math.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file node.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file numeric.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file object.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file pack.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file parse.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file process.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file random.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file range.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file rational.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file re.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regcomp.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regenc.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regerror.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regexec.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regparse.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file regsyntax.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file ruby.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file safe.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file signal.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file sprintf.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file st.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file strftime.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file string.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file struct.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file time.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file transcode.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file util.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file variable.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file compile.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file debug.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file iseq.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file vm.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file vm_dump.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file thread.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file cont.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file ascii.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file us_ascii.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file unicode.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file utf_8.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file newline.o, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: ignoring file setproctitle.o, file was built for i386 which is not the architecture being linked (x86_64) Undefined symbols for architecture x86_64: "_main", referenced from: start in crt1.10.6.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make: *** [miniruby] Error 1 

思考?

编辑:贾里德。 当我添加--with-gcc=clang ,日志看起来像

 [2012-03-08 21:20:12] make CC = clang LD = ld LDSHARED = clang -dynamiclib CFLAGS = -O3 -ggdb -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 -fno-common -pipe XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I. -I.ext/include/x86_64-darwin11.3.0 -I./include -I. DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -install_name /Users/squantowalks/.rvm/rubies/ruby-1.9.3-p125/lib/libruby.1.9.1.dylib -current_version 1.9.1 -compatibility_version 1.9.1 -Wl,-unexported_symbol,_Init_* -Wl,-unexported_symbol,*_threadptr_* -Wl,-u,_objc_msgSend SOLIBS = compiling main.c compiling dmydln.c compiling dmyencoding.c compiling version.c compiling dmyversion.c compiling miniprelude.c compiling array.c compiling bignum.c compiling class.c compiling compar.c compiling complex.c compiling dir.c compiling dln_find.c compiling enum.c compiling enumerator.c compiling error.c compiling eval.c compiling load.c compiling proc.c compiling file.c compiling gc.c compiling hash.c compiling inits.c compiling io.c io.c:997:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:1953:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:1975:5: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:2409:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:2452:5: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:2491:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:2515:5: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:2652:2: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:2662:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:3012:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:3057:5: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:3172:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:3213:5: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:3417:2: warning: expression result unused [-Wunused-value] SET_BINARY_MODE(fptr); ^~~~~~~~~~~~~~~~~~~~~ io.c:330:31: note: instantiated from: #define SET_BINARY_MODE(fptr) 0 ^ io.c:3437:2: warning: expression result unused [-Wunused-value] NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:331:52: note: instantiated from: #define NEED_NEWLINE_DECORATOR_ON_READ_CHECK(fptr) 0 ^ io.c:4173:5: warning: expression result unused [-Wunused-value] SET_BINARY_MODE_WITH_SEEK_CUR(fptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:333:45: note: instantiated from: #define SET_BINARY_MODE_WITH_SEEK_CUR(fptr) 0 ^ io.c:4696:2: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ io.c:4743:2: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ io.c:8236:2: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ io.c:8243:6: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ io.c:8250:3: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ io.c:8255:3: warning: expression result unused [-Wunused-value] SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ io.c:332:64: note: instantiated from: #define SET_UNIVERSAL_NEWLINE_DECORATOR_IF_ENC2(enc2, ecflags) 0 ^ 22 warnings generated. compiling marshal.c compiling math.c compiling node.c compiling numeric.c compiling object.c compiling pack.c compiling parse.c compiling process.c compiling random.c compiling range.c compiling rational.c compiling re.c compiling regcomp.c compiling regenc.c compiling regerror.c compiling regexec.c compiling regparse.c compiling regsyntax.c compiling ruby.c compiling safe.c compiling signal.c compiling sprintf.c compiling st.c compiling strftime.c compiling string.c compiling struct.c compiling time.c compiling transcode.c compiling util.c compiling variable.c compiling compile.c compiling debug.c compiling iseq.c compiling vm.c compiling vm_dump.c compiling thread.c compiling cont.c compiling ./enc/ascii.c compiling ./enc/us_ascii.c compiling ./enc/unicode.c compiling ./enc/utf_8.c compiling newline.c compiling ./missing/setproctitle.c linking miniruby :1: [BUG] Bus Error ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0] -- Control frame information ----------------------------------------------- c:0003 p:0002 s:0006 b:0006 l:000005 d:000005 TOP :1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:000e28 d:000e28 TOP -- Ruby level backtrace information ---------------------------------------- :1:in `' -- C level backtrace information ------------------------------------------- See Crash Report log file under ~/Library/Logs/CrashReporter or /Library/Logs/CrashReporter, for the more detail of. -- Other runtime information ----------------------------------------------- * Loaded script: ./miniruby * Loaded features: 0 enumerator.so [NOTE] You may have encountered a bug in the Ruby interpreter or extension libraries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html make: *** [.rbconfig.time] Abort trap: 6 

编辑:谢谢你所有的帮助人:),终于想通了。 这是我做过的sparknotes版本:

(如果您不熟悉命令行, http ://jewelrybox.unfiniti.com/是天赐之物)。

  1. 安装RVM(https://rvm.beginrescueend.com/)它在一个comp(仅限mac / linux)上同时管理多个版本的Ruby。 使不同版本的Ruby可以独立工作的文件夹(根据我的理解)。
  2. 获取XCode(https://developer.apple.com/xcode/)需要一起编译代码。 但是,你还需要gcc,它不包含最新版本的XCode。 洙….

  3. 在这里(https://developer.apple.com/downloads/index.action)并下载了“XCode命令行工具”,简单直接地运行。

  4. 安装了Macports(http://www.macports.org/install.php),这样我就可以……

  5. 通过终端安装make(port install make)。 不知道它做了什么,但终端在安装之前给出了错误,之后没有错误。

现在我们准备摇滚:)

运行(rvm install 1.9.3)稍等一下。 这需要一段时间。

然后(rvm 1.9.3 – 默认)

然后(gem install rails)安装Ruby on Rails。 这也需要一段时间。

一旦我设置了rails 3,我就制作了一个测试应用程序。 (rails new tester) – 构建目录(cd tester) – 移动到新目录

(rails服务器) – 设置服务器

然后,跳上互联网并访问(http:// localhost:3000)。 如果一切顺利,您应该在浏览器中看到欢迎使用rails。

我自己也遇到了这个问题,而且似乎是ruby-1.9.3-125如何与clang一起工作的问题。 一旦我对抗gcc,它就像一个魅力。

检查以确保您使用which gcc-4.2安装了实际的gcc。 如果不是,则需要安装Xcode或类似于os x gcc安装程序的东西 。 如果安装运行rvm install 1.9.3 --with-gcc=gcc-4.2就是我的诀窍。

从理论上讲,您可以使用现代XCode附带的clang编译器来构建Ruby 1.9.3,但它不受官方支持。 鉴于你遇到了一个段错误,我的猜测是你遇到了配对的一些错误。

相反,安装苹果GCC 4.2 – 应该是apple-gcc42 brew – 并安装CC=/path/to/apple-gcc-4.2 rvm install 1.9.3

从Ruby 1.9.3p-125开始,Clang是官方支持的,所以你应该能够做到:

 rvm install 1.9.3 --with-gcc=clang 

使用1.9.3-head,其中修复了错误https://bugs.ruby-lang.org/issues/6080