如果在Windows下需要用Netbeans调试Rails 3.0以上项目,需要ruby-ide-0.4.x支持。
执行:
gem install ruby-debug-ide
基本上会看到 ruby mkrf_conf.rb 失败的消息
Gem files will remain installed in C:/develop/ruby187/lib/ruby/gems/1.8/gems/ruby-debug-ide-0.4.16 for inspection.
Results logged to C:/develop/ruby187/lib/ruby/gems/1.8/gems/ruby-debug-ide-0.4.16/ext/gem_make.out
稍微深入一点,知道是因为 ruby-debug-ide-0.4.x依赖于 ruby-debug-base-0.10.x,而这个Gem分为Linux和windows两个版本
手工下载 ruby-debug-base windows版本,如:
http://rubygems.org/gems/ruby-debug-base/versions/0.10.4-mswin32
gem install ruby-debug-base-0.10.4-mswin32.gem
成功。
再 gem install ruby-debug-ide,依然失败。
仔细阅读:
ruby-debug-ide的mkrf_conf.rb,发现如下语句:
if RUBY_VERSION < "1.9"
inst.install "ruby-debug-base", '>=0.10.4'
else
inst.install "ruby-debug-base19", '>=0.11.24'
end
inst.install "ruby-debug-base", '>=0.10.4', ‘mswin32'
Gem::Specification.new do |s|
s.name = %q{ruby-debug-base}
s.version = "0.10.4"
s.platform = %q{mswin32}
...
end
注释掉 s.platform那行:
Gem::Specification.new do |s|
s.name = %q{ruby-debug-base}
s.version = "0.10.4"
#s.platform = %q{mswin32}
...
end
总结而言,关键就是需要将Gem ruby-debug-base-0.x.y-mswin32重新命名为ruby-debug-base-0.x.y
附件提供改过名的 ruby-debug-base-0.10.4