0

更新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

Ruby: ruby​​ 1.8.6 (2008-08-11 パッチレベル 287) [i386-mswin32]

ルビーの宝石: 1.3.2

Hpricot: 0.8.6 (using gem install hpricot問題なくインストールできました)

どんな手掛かり?

ありがとう。

4

2 に答える 2

0

別の hpricot が必要です。0.6.164 は問題ありませんが、0.8.6 は問題ありません。後者は 1.8.7+ ruby​​ 向けかもしれません。

于 2012-05-30T08:53:16.537 に答える
0

Ruby DevKit がここでの救世主でした。チャーラスに感謝します。

私たちがしたことは次のとおりです。

1. Uninstalled the ruby
2. Installed it again using RubyInstaller
3. Installed the DevKit
4. Install the hpricot gem
5. That's it
于 2012-04-19T14:34:00.227 に答える