如何在Windows上安装RedCloth?

11
在Windows XP上运行gem install RedCloth时,我遇到了以下问题:
Fetching: RedCloth-4.2.8.gem (100%)
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
Successfully installed RedCloth-4.2.8
1 gem installed
Installing ri documentation for RedCloth-4.2.8...
Installing RDoc documentation for RedCloth-4.2.8...
ERROR:  While generating documentation for RedCloth-4.2.8
... MESSAGE:   error generating index.html: Error while evaluating D:/Programs/R
uby/lib/ruby/gems/1.9.1/gems/rdoc-3.9/lib/rdoc/generator/template/darkfish/index
.rhtml: undefined method `[]' for nil:NilClass (RDoc::Error)
... RDOC args: --op D:/Programs/Ruby/lib/ruby/gems/1.9.1/doc/RedCloth-4.2.8/rdoc
 --charset=UTF-8 --line-numbers --title RedCloth --main README.rdoc lib lib/case
_sensitive_require ext README.rdoc COPYING CHANGELOG --title RedCloth-4.2.8 Docu
mentation --quiet

为什么会出现这个错误?

然后我在config/environment.rb中添加了require 'RedCloth',并尝试运行rails s,但不幸的是我得到了以下错误:

D:/Programs/Ruby/lib/ruby/gems/1.9.1/gems/RedCloth-4.2.8/lib/redcloth.rb:12:in `
require': no such file to load -- 1.9/redcloth_scan (LoadError)
Couldn't load 1.9/redcloth_scan
The $LOAD_PATH was: ...

我做错了什么?

我使用的是Rails 3.0.1,Ruby 1.9.2。

bundle show RedCloth

=> D:/Programs/Ruby/lib/ruby/gems/1.9.1/gems/RedCloth-4.2.8

尝试运行 gem install --no-rdoc RedCloth - drummondj
@John:它解决了第一个错误,但没有解决第二个。 - Misha Moroshko
好的 - 那我现在卡住了。 - drummondj
2个回答

13

这是我对你的第二个错误“Couldn't load 1.9/redcloth_scan”的解决方法,它看起来像是Windows上RedCloth的一个bug。在执行gem install RedCloth --no-rdoc之后,我运行了以下命令:

cd c:\Ruby192\lib\ruby\gems\1.9.1\gems\RedCloth-4.2.8\lib
mkdir 1.9
copy redcloth_scan.so 1.9

你应该用你的路径替换那个目录,当然是 "D:\Programs\Ruby\lib\ruby\gems\1.9.1\gems\RedCloth-4.2.8\lib"。


或者在redcloth.rb文件的rescue块中添加require 'redcloth_scan'... https://jgarber.lighthouseapp.com/projects/13054-redcloth/tickets/276-redcloth-loads-wrong-in-mingw-with-native-build - rogerdpack

0

请根据错误信息命名目录。例如,对于Ruby 2.1和

LoadError: cannot load such file -- 2.1/redcloth_scan

应该在“lib”目录中创建目录“2.1”,并将redcloth_scan.so复制到其中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接