胡傲果 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条)

报告相同问题?

悬赏问题

  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用
  • ¥15 R语言mediation包做中介分析,直接效应和间接效应都很小,为什么?
  • ¥15 Jenkins+k8s部署slave节点offline
  • ¥15 如何实现从tello无人机上获取实时传输的视频流,然后将获取的视频通过yolov5进行检测
  • ¥15 WPF使用Canvas绘制矢量图问题
  • ¥15 用三极管设计一个单管共射放大电路