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

所属分类: 脚本专栏 / ruby专题 阅读数: 1685
收藏 0 赞 0 分享

升级到最新的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

更多精彩内容其他人还在看

Ruby一行代码实现的快速排序

这篇文章主要介绍了Ruby一行代码实现的快速排序,本文直接给出实现代码,超级简洁的一个的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的3种快速排序算法

这篇文章主要介绍了Ruby实现的3种快速排序算法,本文给出了快速排序的普通版本、快速排序的随机化版本、快速排序的利用了Ruby的语法糖的随机化版本三个版本,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最优二叉查找树算法

这篇文章主要介绍了Ruby实现的最优二叉查找树算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最短编辑距离计算方法

这篇文章主要介绍了Ruby实现的最短编辑距离计算方法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的最长公共子序列算法

这篇文章主要介绍了Ruby实现的最长公共子序列算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的合并排序算法

这篇文章主要介绍了Ruby实现的合并排序算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的矩阵连乘算法

这篇文章主要介绍了Ruby实现的矩阵连乘算法,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现的各种排序算法

这篇文章主要介绍了Ruby实现的各种排序算法,本文给出了Bubble sort、Insertion sort、Selection sort、Shell sort等排序的实现方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby实现生产者和消费者代码分享

这篇文章主要介绍了Ruby实现生产者和消费者代码分享,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

Ruby中require、load、include、extend的区别介绍

这篇文章主要介绍了Ruby中require、load、include、extend的区别介绍,require、load用于文件,如.rb等等结尾的文件,include、load则用于包含一个文件中的模块,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多