mac os gem安装json出现error failed的解决办法

568 查看

升级到最新的mac os Mavericks。装json出现错误:

复制代码 代码如下:

gem install json -v '1.8.1'


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

    /usr/local/var/rbenv/versions/2.0.0-p247/bin/ruby extconf.rb
creating Makefile

make "DESTDIR="
compiling generator.c
In file included from /usr/local/var/rbenv/versions/2.0.0-p247/include/ruby-2.0.0/ruby.h:33,
                 from ../fbuffer/fbuffer.h:5,
                 from generator.c:1:
/usr/local/var/rbenv/versions/2.0.0-p247/include/ruby-2.0.0/ruby/ruby.h:51:21: error: string.h: No such file or directory
/usr/local/var/rbenv/versions/2.0.0-p247/include/ruby-2.0.0/ruby/ruby.h:61:21: error: stdint.h: No such file or directory
/usr/local/var/rbenv/versions/2.0.0-p247/include/ruby-2.0.0/ruby/ruby.h:64:23: error: inttypes.h: No such file or directory
/usr/local/var/rbenv/versions/2.0.0-p247/include/ruby-2.0.0/ruby/ruby.h:68:19: error: stdio.h: No such file or directory


解决办法:
复制代码 代码如下:
xcode-select --install

需要重新安装Command Line Developer Tools

如果这个办法还是不行,mac下需要安装下apple-gcc42

复制代码 代码如下:
brew install apple-gcc42

注意brew 0.9.4应该是不带apple-gcc42的源的,可以使用brew doctor检查下是否和Mavericks兼容,这里需要升级
复制代码 代码如下:
brew update