簡體   English   中英

在osx 10.9.3上安裝rails時出現多個C編譯錯誤

[英]Multiple C compilation errors when installing rails on osx 10.9.3

RoR新手在這里..嘗試在osx 10.9.3和ruby 1.9.3上安裝rails,我得到了很長的錯誤消息。 任何線索如何解決這個問題?

$ sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install rails
Password:
Building native extensions.  This could take a while...
ERROR:  Error installing rails:
  ERROR: Failed to build gem native extension.

    /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/bin/ruby extconf.rb
creating Makefile

make  clean

make
compiling generator.c
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:48:21: error: string.h: No such file or directory
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:58:21: error: stdint.h: No such file or directory
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:61:23: error: inttypes.h: No such file or directory
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:65:19: error: stdio.h: No such file or directory
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:67,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/defines.h:29:21: error: stdlib.h: No such file or directory
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:74:20: error: alloca.h: No such file or directory
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:178,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/../lib/gcc/i686-apple-darwin11/4.2.1/include/limits.h:10:25: error: limits.h: No such file or directory
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:1383,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:36:23: error: sys/types.h: No such file or directory
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:40:22: error: sys/time.h: No such file or directory
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:43,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:1383,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/st.h:130: error: expected declaration specifiers or ‘...’ before ‘uint32_t’
In file included from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/ruby.h:1383,
                 from /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby.h:32,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:294: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_fdset_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:389: error: expected declaration specifiers or ‘...’ before ‘fd_set’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:389: error: expected declaration specifiers or ‘...’ before ‘fd_set’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:389: error: expected declaration specifiers or ‘...’ before ‘fd_set’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:389: warning: ‘struct timeval’ declared inside parameter list
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:389: warning: its scope is only this definition or declaration, which is probably not what you want
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:390: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:390: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:390: error: expected declaration specifiers or ‘...’ before ‘rb_fdset_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:390: warning: ‘struct timeval’ declared inside parameter list
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:391: warning: ‘struct timeval’ declared inside parameter list
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:563: error: expected declaration specifiers or ‘...’ before ‘pid_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:581: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_fork’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:582: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_fork_err’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:584: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_waitpid’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:585: error: expected ‘)’ before ‘pid’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:586: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_spawn’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:587: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rb_spawn_err’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:589: error: expected ‘)’ before ‘pid’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:708: error: expected declaration specifiers or ‘...’ before ‘uint32_t’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:833: error: expected ‘)’ before ‘long’
/Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/include/ruby-1.9.1/ruby/intern.h:834: error: expected ‘)’ before ‘long’
In file included from generator.c:1:
../fbuffer/fbuffer.h: In function ‘fbuffer_alloc’:
../fbuffer/fbuffer.h:72: warning: implicit declaration of function ‘memset’
../fbuffer/fbuffer.h:72: warning: incompatible implicit declaration of built-in function ‘memset’
../fbuffer/fbuffer.h: In function ‘fbuffer_append’:
../fbuffer/fbuffer.h:109: warning: implicit declaration of function ‘memcpy’
../fbuffer/fbuffer.h:109: warning: incompatible implicit declaration of built-in function ‘memcpy’
In file included from generator.c:2:
generator.h:5:18: error: math.h: No such file or directory
generator.h:6:19: error: ctype.h: No such file or directory
generator.c: In function ‘fstrndup’:
generator.c:304: warning: implicit declaration of function ‘memccpy’
generator.c: In function ‘mString_to_json_raw_object’:
generator.c:410: warning: implicit declaration of function ‘strlen’
generator.c:410: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:411: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘mString_Extend_json_create’:
generator.c:438: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:439: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘State_allocate’:
generator.c:505: warning: incompatible implicit declaration of built-in function ‘memset’
generator.c: In function ‘set_state_ivars’:
generator.c:611: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_aref’:
generator.c:657: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_aset’:
generator.c:671: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:675: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘generate_json_float’:
generator.c:813: warning: implicit declaration of function ‘isinf’
generator.c:816: warning: implicit declaration of function ‘isnan’
generator.c: In function ‘isArrayOrObject’:
generator.c:905: warning: implicit declaration of function ‘isspace’
generator.c: In function ‘cState_init_copy’:
generator.c:972: warning: incompatible implicit declaration of built-in function ‘memcpy’
generator.c: In function ‘cState_indent’:
generator.c:1013: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_indent_set’:
generator.c:1035: warning: implicit declaration of function ‘strdup’
generator.c:1035: warning: incompatible implicit declaration of built-in function ‘strdup’
generator.c: In function ‘cState_space’:
generator.c:1050: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_space_set’:
generator.c:1073: warning: incompatible implicit declaration of built-in function ‘strdup’
generator.c: In function ‘cState_space_before’:
generator.c:1087: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_space_before_set’:
generator.c:1109: warning: incompatible implicit declaration of built-in function ‘strdup’
generator.c: In function ‘cState_object_nl’:
generator.c:1124: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_object_nl_set’:
generator.c:1146: warning: incompatible implicit declaration of built-in function ‘strdup’
generator.c: In function ‘cState_array_nl’:
generator.c:1160: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c: In function ‘cState_array_nl_set’:
generator.c:1181: warning: incompatible implicit declaration of built-in function ‘strdup’
generator.c: In function ‘Init_generator’:
generator.c:1402: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1403: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1404: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1405: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1406: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1407: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1408: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1409: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1410: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1411: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1412: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1413: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1414: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1415: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1416: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1417: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1418: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1419: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1420: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1421: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1422: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1423: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1424: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1425: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1426: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1427: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1429: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1429: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1430: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1431: warning: incompatible implicit declaration of built-in function ‘strlen’
generator.c:1433: warning: incompatible implicit declaration of built-in function ‘strlen’
make: *** [generator.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/gems/json-1.8.1 for inspection.
Results logged to /Users/gerrytan/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/gems/1.9.1/extensions/x86_64-darwin-12/1.9.1/json-1.8.1/gem_make.out

各位新手。 我不確定錯誤的原因,但是在設置Rails環境時,這篇文章對您有很大幫助:

http://railsapps.github.io/installrubyonrails-mac.html

希望通過按照指南中列出的步驟可以解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM