胡傲果 2009-06-10 16:55
浏览 276
已采纳

在windows上通过cygwin安装ruby-1.9.1-p0的奇怪问题

没装rails,安装步骤完全按照http://zhujg.iteye.com/blog/355040

到make && make install时完全正常,ruby安装完后可以正常执行程序。但是一执行gem install xxx就报错:no such file or directory -\usr\local\lib\ruby\site_ruby\1.9.1\i386-cygwin\digest\md5.so。经多次检查md5.so这个文件是确实存在的,而且路径也完全正确。我的cygwin安装在D盘,完整路径是D:\Cygwin\usr\local\lib\ruby\site_ruby\1.9.1\i386-cygwin\digest\md5.so,  Cygwin.bat在D:\Cygwin下。

报错图片见附件。请各位help help me,这个问题已经困扰了我好几个月了。


问题补充:
引用
正确的路径应该是:
D:\cygwin\usr\local\lib\ruby\1.9.1\i386-cygwin\digest\md5.so
吧? 不含 site_ruby 的。你把 site_ruby 里的 md5.so 复制到上面这个路径试试

我看了一下,在D:\cygwin\usr\local\lib\ruby\1.9.1\i386-cygwin\digest这个目录里也有md5.so这个文件,而且报错也确实是报的site_ruby的那个路径。
问题补充:
引用
还有个解决方法是: 打开 D:\cygwin\usr\local\lib\ruby\1.9.1\digest\md5.rb
把第 8 行的 require 'digest/md5' 改成你的 md5.so 所在的位置。路径相对于 lib 目录。 譬如如果你把 md5.so 放在了 lib 目录下,那么 require 'md5' 即可。

我发现我根本就没有D:\cygwin\usr\local\lib\ruby\1.9.1\digest\md5.rb这个文件,怎么回事?
问题补充:
我的md5.rb是在D:\Cygwin\usr\local\lib\ruby\1.9.1\rubygems\digest下
问题补充:
另外\usr\local\lib\ruby\site_ruby\1.9.1\i386-cygwin\digest\md5.so就是相对于D:\Cygwin\lib的路径,可以看附件的报错信息
  • 写回答

4条回答 默认 最新

  • xenocide 2009-06-11 12:17
    关注

    再提供两个想法:

    可能你得把
    D:\cygwin\usr\local\lib\ruby\site_ruby\1.9.1\i386-cygwin
    清空? (别忘了备个份)

    或者将 rubygems 更新到 1.3.4 (选 tgz 的)
    [url]http://rubyforge.org/frs/?group_id=126&release_id=35061[/url]
    解压后在 cygwin 下运行 ruby setup.rb

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题