2016-12-28 62 views
5

我无法安装cocoapods。我这样做:安装cocoapods时出错:json-1.8.3和更多版本出错

gem install cocoapods 

而且我得到所有这些错误:

Building native extensions. This could take a while... 
ERROR: Error installing cocoapods: 
    ERROR: Failed to build gem native extension. 

    current directory: /usr/local/lib/ruby/gems/2.4.0/gems/json-1.8.3/ext/json/ext/generator 
/usr/local/opt/ruby/bin/ruby -r ./siteconf20161228-19158-1ru87yt.rb extconf.rb 
creating Makefile 

current directory: /usr/local/lib/ruby/gems/2.4.0/gems/json-1.8.3/ext/json/ext/generator 
make "DESTDIR=" clean 

current directory: /usr/local/lib/ruby/gems/2.4.0/gems/json-1.8.3/ext/json/ext/generator 
make "DESTDIR=" 
compiling generator.c 
generator.c:861:25: error: use of undeclared identifier 'rb_cFixnum' 
    } else if (klass == rb_cFixnum) { 
         ^
generator.c:863:25: error: use of undeclared identifier 'rb_cBignum' 
    } else if (klass == rb_cBignum) { 
         ^
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2167:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2162:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2167:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2163:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs+1, varc, vari+1)) 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2168:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs+1, varc, vari+1)) 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2162:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2167:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2162:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 4 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2167:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2162:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
generator.c:975:5: warning: division by zero is undefined [-Wdivision-by-zero] 
    rb_scan_args(argc, argv, "01", &opts); 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2143:9: note: expanded from macro 'rb_scan_args' 
     rb_scan_args0(argc,argvp,fmt,\ 
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2329:8: note: expanded from macro 'rb_scan_args0' 
        rb_scan_args_verify(fmt, varc), vars) 
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2201:11: note: expanded from macro 'rb_scan_args_verify' 
     verify = rb_scan_args_verify_count(fmt, varc); \ 
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
note: (skipping 5 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all) 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2167:6: note: expanded from macro 'rb_scan_args_count_hash' 
    rb_scan_args_count_block(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2162:6: note: expanded from macro 'rb_scan_args_count_block' 
    rb_scan_args_count_end(fmt, ofs, varc, vari) : \ 
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
/usr/local/Cellar/ruby/2.4.0/include/ruby-2.4.0/ruby/ruby.h:2158:12: note: expanded from macro 'rb_scan_args_count_end' 
    ((vari)/(!fmt[ofs] || rb_scan_args_bad_format(fmt))) 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
6 warnings and 2 errors generated. 
make: *** [generator.o] Error 1 

make failed, exit code 2 

Gem files will remain installed in /usr/local/lib/ruby/gems/2.4.0/gems/json-1.8.3 for inspection. 
Results logged to /usr/local/lib/ruby/gems/2.4.0/extensions/x86_64-darwin-16/2.4.0/json-1.8.3/gem_make.out 

我一直在寻找了很多,我不能找到这些错误东西。

我该如何解决这个问题?

回答

5

看来JSON 1.8.3 is not compatible with ruby 2.4.。我认为他们现在正在解决这个问题。在此期间,我通过降级到红宝石解决了类似的问题2.3

+0

如果它帮助其他人:'brew switch ruby​​ 2.3.3'(http://stackoverflow.com/a/4158763/1988505)和'sudo gem update --system'(http://stackoverflow.com/a/39775255/1988505)我发现它很有用。 –

0

我遇到了同样的问题。我从他们的网站安装了Cocoapods应用程序,这使我可以构建我的应用程序所需的cocoapods(集成Firebase)。

https://github.com/CocoaPods/CocoaPods/issues/6299#issuecomment-269282062

安装命令行工具似乎为我工作,但希望破碎的依赖(json1.8.3)将被固定以使该构建正确。

希望这可以帮助您,直到找到更持久的解决方案。

0

同样的问题,这里的宝石“GitHub上的页面”,试图安装JSON ..

在降级解决了我的问题用这个红宝石2.3:

`酿造安装rbenv红宝石打造

将rbenv添加到bash中,以便每次打开终端时都会加载它 echo'if rbenv>/dev/null;然后eval“$(rbenv init - )”;网络连接” >>〜/ .bash_profile中 源在〜/ .bash_profile

安装Ruby rbenv安装2.3.3 rbenv全球2.3.3 红宝石-v`

来自:https://gorails.com/setup/osx/10.12-sierra