更新:此问题已使用RubyInstaller
和相关 DevKit
的. 请看下面的答案。
在新的 WinXP 上,我们正在尝试设置 RoR。我们在运行 rails 应用程序时遇到了一些问题。在调试 Hpricot gem 时发现了罪魁祸首。如果我们在一个简单的 Ruby 程序中使用 Hpricot,也会出现同样的问题。
当我们运行任何使用 Hpricot 的 Ruby 程序时,会出现一个消息框,其中包含以下消息:
The procedure entry point rb_hash_lookup could not be located in the dynamic link library msvcrt-ruby18.dll.
这是堆栈跟踪:
C:/Ruby/lib/ruby/gems/1.8/gems/hpricot-0.8.6-x86-mswin32/lib/hpricot_scan/1.8/hpricot_scan.so: 127: The specified procedure could not be found.
- C:/Ruby/lib/ruby/gems/1.8/gems/hpricot-0.8.6-x86-mswin32/lib/hpricot_scan/1.8/hpricot_scan.so (LoadError)
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from C:/Ruby/lib/ruby/gems/1.8/gems/hpricot-0.8.6-x86-mswin32/lib/hpricot_scan.rb:1
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from C:/Ruby/lib/ruby/gems/1.8/gems/hpricot-0.8.6-x86-mswin32/lib/hpricot.rb:20
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from hp_test.rb:3
红宝石:红宝石1.8.6(2008-08-11补丁级别287)[i386-mswin32]
红宝石:1.3.2
Hpricot:0.8.6(安装using gem install hpricot
时没有任何问题)
有什么线索吗?
谢谢。