zoukankan      html  css  js  c++  java
  • win下 bundle install 显示json安装错误解决办法

    环境:win7,ruby1.9.3p392(鄙视我吧,在win下弄rails不是找死么,只是有时候懒得切linux罢了,好吧只是偶尔要用到win还是希望它能跑起来。)


    错误:在一个rails project中运行bundle install(或是搭建octopress博客时运行bundle install时)其他的gem都能正确安装,唯独到json这里出了莫名其妙的错误=。=

    如下:

    Installing json (1.7.7)
    Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
    	C:/Ruby193/bin/ruby.exe extconf.rb
    creating Makefile
    make 
    generating generator-i386-mingw32.def
    compiling generator.c
    In file included from c:/Ruby193/include/ruby-1.9.1/ruby.h:32:0,
    		 from ../fbuffer/fbuffer.h:5,
    		 from generator.c:1:
    c:/Ruby193/include/ruby-1.9.1/ruby/ruby.h:109:14: error: size of array 'ruby_check_sizeof_voidp' is negative
    ...//此处省略n行=。=
    


    查了各种资料,终于发现这是json采用了c的编译器的原因,
    方法1:
    请看so上对此问题的解决
    http://stackoverflow.com/questions/7780756/cannot-install-json-gem-in-rails-using-windows
    根据这个说法,只要装个Devkit就行了,下载链接: http://rubyinstaller.org/downloads/
    用法请戳https://github.com/oneclick/rubyinstaller/wiki/Development-Kit


    方法2:
    我不详细介绍的原因是这方法在我电脑上没用!!!
    反正切回linux是p事没有。json装的好不过滴的。所以说不要再win下弄rails啊!!!!
    但是我昨晚找到了新法子,用纯ruby写的 json_pure 代替了json,
    具体方法如下:
    在工作目录下找到gemfile.lock, 用文本编辑器打开,找到json 1.7.7改为json_pure 1.7.7
    然后再运行bundle install ,  your bunlde is complete搞定。(考虑到rubygems.org不稳定,推荐使用http://ruby.taobao.org 的gem)


    此处牺牲了对速度的需求,毕竟c跑地要快些=。=勉勉强强算是解决了吧。。

  • 相关阅读:
    日志
    JAVA字符串类
    JAVA包
    JAVA面向对象
    JAVA数组
    JAVA循环结构
    JAVA程序调试
    JAVA条件判断
    JAVA算术运算符
    JAVA数据类型
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3034385.html
Copyright © 2011-2022 走看看