没装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 的。你把 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' 即可。
把第 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的路径,可以看附件的报错信息