我是ROR的新手,我试图安装DevKit,但是我遇到了一些错误。我使用的是Win7-64bit,我安装了DevKit-mingw64-64-4.7.2-20130224-1432-sfx。 我跟着github中的安装。老实说,错误不明确,我无法找到解决问题的方法。
C:\Devkit>type config.yml
This configuration file contains the absolute path locations of all
installed Rubies to be enhanced to work with the DevKit. This config
file is generated by the 'ruby dk.rb init' step and may be modified
before running the 'ruby dk.rb install' step. To include any installed
Rubies that were not automagically discovered, simply add a line below
the triple hyphens with the absolute path to the Ruby root directory.
Example:
--
- C:/ruby19trunk
- C:/ruby192dev
--
c:/Ruby22
然后
C:\Devkit>ruby dk.rb install
[INFO] Skipping existing gem override for ' c:/Ruby22'
[WARN] Skipping existing DevKit helper library for ' c:/Ruby22'
和
C:\Devkit>gem install json --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing json:
ERROR: Failed to build gem native extension.
c:/Ruby22/bin/ruby.exe -r ./siteconf20150524-7692-son84q.rb extconf.rb
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
generating generator-i386-mingw32.def
compiling generator.c
In file included from c:/Ruby22/include/ruby-2.2.0/ruby.h:33:0,
from ../fbuffer/fbuffer.h:5,
from generator.c:1:
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:111:14: error: size of array 'ruby_chec
k_sizeof_voidp' is negative
In file included from c:/Ruby22/include/ruby-2.2.0/ruby.h:33:0,
from ../fbuffer/fbuffer.h:5,
from generator.c:1:
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_obj_freeze_inline':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1156:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1157:2: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1158:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1158:27: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_data_object_get':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1192:13: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_obj_written':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1271:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1271:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_num2char_inline':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1344:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1345:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1345:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1345:9: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_class_of':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1670:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h: In function 'rb_type':
c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:1687:12: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
In file included from generator.c:1:0:
../fbuffer/fbuffer.h: In function 'fbuffer_append_str':
../fbuffer/fbuffer.h:127:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
../fbuffer/fbuffer.h:127:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
../fbuffer/fbuffer.h:127:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'convert_UTF8_to_JSON_ASCII':
generator.c:129:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:129:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:129:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:130:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:130:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:130:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'convert_UTF8_to_JSON':
generator.c:227:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:227:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:227:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:228:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:228:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:228:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_configure':
generator.c:559:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:559:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:559:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:560:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:560:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:560:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:567:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:567:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:567:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:568:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:568:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:568:33: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:575:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:575:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:575:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:576:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:576:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:576:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:583:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:583:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:583:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:584:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:584:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:584:36: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:591:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:591:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:591:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:592:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:592:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:592:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'set_state_ivars':
generator.c:640:21: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:640:21: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:640:21: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:642:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:642:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:642:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'generate_json_object':
generator.c:727:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:727:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:727:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'generate_json_array':
generator.c:773:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:773:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:773:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'isArrayOrObject':
generator.c:930:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:930:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:930:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:931:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:931:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:931:15: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_indent_set':
generator.c:1055:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1055:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1055:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1064:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1064:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1064:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_space_set':
generator.c:1093:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1093:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1093:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1102:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1102:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1102:31: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_space_before_set':
generator.c:1129:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1129:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1129:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1138:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1138:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1138:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_object_nl_set':
generator.c:1167:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1167:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1167:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1175:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1175:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1175:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c: In function 'cState_array_nl_set':
generator.c:1202:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1202:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1202:11: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1210:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1210:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
generator.c:1210:34: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
make: *** [generator.o] Error 1
make failed, exit code 2
Gem files will remain installed in c:/Ruby22/lib/ruby/gems/2.2.0/gems/json-1.8.2
for inspection.
Results logged to c:/Ruby22/lib/ruby/gems/2.2.0/extensions/x86-mingw32/2.2.0/jso
n-1.8.2/gem_make.out
答案 0 :(得分:10)
我有同样的错误,我通过使用32位版本的devkit来解决它。
即使我运行的操作系统似乎是Windows 7 64位,Ruby安装程序中的Ruby安装似乎也是32位,如下所示:
C:\>ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [i386-mingw32]
使用32位devkit(DevKit-mingw64-32-4.7.2-20130224-1151-sfx.exe
)似乎对我有用。