环境:
windows 10 64bit
ruby 2.2.4p230 (2015-12-16 revision 53155) [i386-mingw32]
gcc version 4.8.1 (GCC)
 
minGw的配置:
 
//家目录
 
//C头文件目录
 
 

//C++头文件目录

CPLUS_INCLUDE_PATH=%MINGW_PATH%/include/c++/4.8.1;%MINGW_PATH%/include/c++/4.8.1/mingw32;%MINGW_PATH%/include/c++/4.8.1/backward

由于本次测试是用c语言写的扩展 所以不需要配置c++

 
//可执行程序目录
Path中:
 
注意mingw的bin下面不叫make 而叫 mingw32-make。需要自己动手改一下
 
正常情况下ruby生成的makefile
直接make会报各种异常
 
奶奶的发了好几天没人理我,无奈只有自己研究了。
 
异常的原因是:makefile的部分路径地址不对
需要自己手动修改
d:/RailsInstaller/Ruby2.2.0/include/ruby-2.2.0/ruby/win32.h:319:44: warning:'st
extern int clock_gettime(clockid_t, struct timespec *);
^
d:/RailsInstaller/Ruby2.2.0/include/ruby-2.2.0/ruby/win32.h:320:43: warning: 'st
externint clock_getres(clockid_t,struct timespec *);

这种错是因为

D:\RailsInstaller\Ruby2.2.0\include\ruby-2.2.0\ruby\win32.h 的 timespec 没有事先定义 在第225行加入 struct timespec; 就可以了
 
process_begin:CreateProcess(NULL, rm -f mytest.so,...) failed.
make (e=2):Makefile:271: recipe for target 'mytest.so' fail

这个错是因为 makefile 里面多加了一个 process 来删除so文件。这里我将它去掉就正常了 (make -d 可以观察到哪一步出错)

 
ok!。接下来测试在ruby中是否能调用成功呢?
 
到此在windows环境下完美搞定!
 

最新文章

  1. rc.local文件
  2. jrebel注意事项
  3. 程序员级别鉴定书(.NET面试问答集锦)
  4. Advanced Puppet 系列的前言
  5. ios程序开发杂记
  6. rpmdb: BDB0113 错误
  7. vs2010自带的报表
  8. OSChina 的全文搜索设计说明 —— 索引过程
  9. (step5.1.2)hdu 1305(Immediate Decodability——字典树)
  10. 在web网页中正确使用图片格式
  11. Codeforces Round #193 (Div. 2)
  12. STM32F207V 进行DS18B20处理
  13. SGD
  14. php中的echo,json_decode,json_encode常用函数使用注意事项
  15. NOIP2016 天天爱跑步 正解
  16. vue 设计一个倒计时秒杀的组件
  17. [Swift]LeetCode78. 子集 | Subsets
  18. [HNOI2018]寻宝游戏
  19. ios学习--iphone 实现下拉菜单
  20. linux 安装 ImageMagick 和 imagick 扩展

热门文章

  1. C语言之找零钱
  2. Java中的回调
  3. JavaWeb框架_Struts2_(六)----->Struts2的输入校验
  4. hdu 1151 Air Raid DAG最小边覆盖 最大二分匹配
  5. linux内核模块编程实例
  6. Ubuntu 环境 TensorFlow (最新版1.4) 源码编译、安装
  7. System.Security.Cryptography.RSA.FromXmlString 系统找不到指定的文件和X509读取证书文件系统找不到指定的文件异常
  8. select控件自动触发change事件
  9. webrtc视频数据接收端处理流程详解
  10. 本地创建Duplicate数据库