繁体   English   中英

错误:无法在Windows 7x64上构建gem本机扩展

[英]ERROR: Failed to build gem native extension on windows 7x64

我一直在遵循开发套件为rubyinstaller提供的说明
https://github.com/oneclick/rubyinstaller/wiki/Development-Kit

当我尝试最后一步时,出现以下错误:
错误:无法构建gem本机扩展

这是日志文件。 http://pastebin.com/mLUCCVd3

我一直在跟踪故障排除部分,但无济于事。

运行Windows7x64这一切都开始了,因为我想让appfog tunnel正常工作

任何帮助表示赞赏

我看到的东西表明32位和64位构建之间不匹配。

除了查看您的错误日志外,没有做任何其他事情,我看到两件事。

首先,“ c:/Ruby192/include/ruby-1.9.1/ruby/ruby.h:112:14:错误:数组'ruby_check_sizeof_voidp'的大小为负数”

第二,所有“警告:从不同大小的整数[-Wint-to-pointer-cast]转换为指针”消息。

在第一种情况下,将32位无符号整数值0xFFFFFFFF标记为整数值-1; 在64位中,它仍然是0x00000000FFFFFFFF。 在第二种情况下,对于32位和64位窗口,sizeof(int)均为4。 在Win32中,sizeof(* T)为4,但在64位窗口中,sizeof(* T)为8,因此,在32位中,sizeof(int)== sizeof(* T),但在win64中则不是。

在构建脚本,命令行和预处理器定义中寻找矛盾的体系结构。

在您最初的尝试中,您似乎正在使用ruby1.9.x。 我最近尝试在1.9.3中安装json,但遇到了与您相同的错误,特别是:

c:/Ruby192/include/ruby-1.9.1/ruby/missing.h:42:8: error: redefinition of 'struct timezone'

原来是因为我使用的是最新版本的devkit ...您需要使用“旧” devkit,我相信它最近已重命名为“ tdm”,适用于1.9.x和1.8.7。 (我最初将那里的信息页解释为tdm是1.8.x的版本,因为它浏览速度太快,并且在过去已经执行了很多次,而且就语言本身而言,1.9与2.0的兼容性要比2.0的兼容得多。 1.8是1.9)。

在第二次尝试中(在您对其他答案的评论中注意到),您切换到使用ruby 2.0,该宝石可能与idk完全不兼容,这是蠕虫的全部来源。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM