2012-03-08 49 views
12

我一直在努力在我的Mac OSX Lion上安裝Ruby。我已經安裝了XCode,GCC,Readline,Homebrew和JewleryBox,但我不知道發生了什麼。任何指針?如何在OSX Lion上安裝(構建)Ruby 1.9.3?

這是我的終端說的嗎?

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 
<internal:prelude>: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 <internal:prelude>: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 ---------------------------------------- 
<internal:prelude>:1:in `<compiled>' 

-- 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 

想法?

編輯:Jared。當我添加--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 
<internal:prelude>: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 <internal:prelude>: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 ---------------------------------------- 
<internal:prelude>:1:in `<compiled>' 

-- 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/) 它管理的Ruby的多個版本在同一時間上的一個補償(僅限Mac/Linux)的。使不同版本的Ruby可獨立工作的文件夾(根據我的理解)。
  2. 獲取XCode(https://developer.apple.com/xcode/) 需要一起編譯代碼。但是,您還需要gcc,它不包含最新版本的XCode。 Soo ....

  3. 去這裏(https://developer.apple.com/downloads/index.action)並下載了「用於XCode的命令行工具」簡單而直接的運行。

  4. 安裝的MacPorts(http://www.macports.org/install.php),這樣我就可以......

  5. 安裝化妝通過終端(端口安裝生產)。不知道它是幹什麼的,但終端在安裝之前給了錯誤,之後沒有錯誤。

,現在我們準備搖滾:)

運行(RVM安裝1.9.3) 掛出了一點。這需要一段時間。

然後(RVM 1.9.3 --default)

然後(創業板安裝導軌) 要on Rails的安裝Ruby。這也需要一段時間。

一旦我設置了rails 3,我做了一個測試應用程序。 (軌道新測試儀) - 構建目錄 (CD測試儀) - 移動到新目錄

(軌道服務器) - 設置了服務器

然後,跳上互聯網和訪問(HTTP上:/ /本地主機:3000)。如果一切順利,您應該在瀏覽器中看到歡迎使用rails。

+0

你有在「〜/資源庫/日誌/ CrashReporter始終」或「/圖書館/日誌/ CrashReporter始終」日誌文件? – Eric 2012-03-08 23:33:35

+0

嗯,沒有。我確實有一個日誌文件夾。謝謝:) – Squanto 2012-03-09 01:36:24

+0

請試試[我的回答在'用Xcode 4.3.1在Mac上更新Ruby的問題'] [SO]的問題中的步驟?我想知道結果。我想重要的一點是用rvm安裝iconv。 [SO]:http://stackoverflow.com/questions/9651670/issue-updating-ruby-on-mac-with-xcode-4-3-1/9651747#9651747最近,我沒有像這樣的問題我使用上述步驟進行安裝。 我也嘗試過osx-gcc-installed,但是在我的情況下它不起作用。 – shigeya 2012-03-25 06:03:56

回答

14

我只是遇到這個問題我自己,這似乎是如何用的問題ruby-1.9.3-125和clang一起工作。一旦我運行它對抗gcc它就像一個魅力。

檢查以確保您安裝了which gcc-4.2的實際gcc。如果不是,你需要安裝Xcode或類似於os x gcc installer。如果它安裝運行rvm install 1.9.3 --with-gcc=gcc-4.2是什麼對我來說。

+0

嘗試完所有上述答案後,這些說明是唯一在2012年3月21日爲我工作的說明。僅供參考我使用的是Xcode 4.3.1,Lion 10.7.3,我有Alex建議的osx gcc安裝程序。 – 2012-03-21 22:28:40

+0

我試過C =/path/to/apple-gcc-4.2 rvm install 1.9.3,它沒有工作。但這對我有用。謝謝 – ahmy 2012-04-09 12:55:11

5

理論上你可以使用現代XCode附帶的clang編譯器來構建Ruby 1.9.3,但它並沒有官方的支持。鑑於你遇到段錯誤,我的猜測是你遇到了一些配對錯誤。

相反,安裝蘋果GCC 4.2 - 應該是apple-gcc42釀造 - 並且用CC=/path/to/apple-gcc-4.2 rvm install 1.9.3代替安裝。

+0

'hugo-pc:用戶squantowalks $ rvm install apple-gcc42 已經安裝了ruby-1.8.7-p358。 要重新安裝使用: RVM重裝蘋果gcc42 雨果-PC:用戶squantowalks $ RVM重裝蘋果gcc42 提供的編譯器的/ usr/bin中/海灣合作委員會'是基於LLVM,目前尚不能完全支持紅寶石和寶石,請閱讀「rvm要求」。 ? – Squanto 2012-03-08 23:40:59

+0

您需要使用自制軟件來安裝'apple-gcc42'編譯器,而不是RVM。然後在RVM安裝時使用它來編譯Ruby。 – 2012-03-08 23:42:12

+0

這不是事實,[LLVM和clang支持自1.9.3-p125](http://www.ruby-lang.org/zh/news/2012/02/16/ruby-1-9-3 -p125-被髮布/)。 – 2012-03-08 23:56:19

5

隨着Ruby 1.9.3p-125鏘得到官方支持,所以你應該能夠只是:

rvm install 1.9.3 --with-gcc=clang 
+0

這是有線的。我得到:運行'make'時出錯,請閱讀/Users/squantowalks/.rvm/log/ruby-1.9.3-p125/make.log 運行make時出錯。停止安裝。 – Squanto 2012-03-09 02:21:59

+0

不幸的是,這並不適用於我給出同樣的錯誤。有人能夠編譯它嗎? – 2012-03-09 02:30:22

+0

對不起,不知道爲什麼它不起作用。你可能也需要使用'sudo'。 – jaredonline 2012-03-09 03:56:09

相關問題