環境: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跑地要快些=。=勉勉強強算是解決了吧。。
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
