2012-04-19 3 views
0

Update: Эта проблема была решена с помощью RubyInstaller и связанных сDevKit. См. Ответ ниже.Ruby: Hpricot Issue - rb_hash_lookup не может быть расположен в MSVCRT-ruby18.dll


На новом WinXP мы пытаемся установить RoR. У нас была проблема с запуском приложения rails. В то время как отладка драгоценного камня Hpricot была признана виновной. Такая же проблема возникает, если мы используем Hpricot в простой программе Ruby. появляется

окно сообщения со следующим сообщением, когда мы запускаем любую программу Ruby, которая использует Hpricot:

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: рубин 1.8.6 (2008-08-11 287 номера патчей) [i386-mswin32]

Ruby Gems: 1.3.2

Hpricot: 0,8 (без установки) using gem install hpricot

Любой ключ?

Спасибо.

+0

Hpricot - это отказ от работы. Вместо этого вы должны использовать nokogiri. – pguardiario

+0

Это производство в течение года, поэтому переход к nokogiri сейчас не вариант. Может быть, когда-нибудь позже. Спасибо за ваше предложение. – Saim

ответ

0

Ruby DevKit был спасателем здесь. Благодаря Charlas.

То, что мы сделали это:

1. Uninstalled the ruby 
2. Installed it again using RubyInstaller 
3. Installed the DevKit 
4. Install the hpricot gem 
5. That's it 
0

Вам нужен другой Hpricot: 0.6.164 нормально, в то время как 0.8.6 нет. Последний может быть предназначен для рулона 1.8.7+.

Смежные вопросы