Hi, I''m getting a "Could not open any of [xml2, xslt, exslt] (LoadError)" error when trying to run a simple Ruby program taken from the EXAMPLES.rdoc file of the Mechanize gem. The error is in this line of the Nokogiri module of libxml.rb: ffi_lib ''xml2'', ''xslt'', ''exslt'' Not sure if there are missing gems, and if so, what to install. Any ideas how to fix this? Thanks very much. Gary M. Program -- main.rb: ---------------------- ## Google require ''rubygems'' require ''mechanize'' a = WWW::Mechanize.new { |agent| agent.user_agent_alias = ''Mac Safari'' } a.get(''http://google.com/'') do |page| search_result = page.form_with(:name => ''f'') do |search| search.q = ''Hello world'' end.submit search_result.links.each do |link| puts link.text end end ---------------------- Resources I''m using: Editor: Netbeans IDE 6.7.1 Gems installed (among others): mechanize-0.9.3, nokogiri-1.3.3-java Operating System: Windows Vista Home Premium, Service Pack 1, 64-Bit Error message stack: JRuby limited openssl loaded. gem install jruby-openssl for full support. http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/1.8/ffi/library.rb:18:in `ffi_lib'': Could not open any of [xml2, xslt, exslt] (LoadError) from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri/ffi/libxml.rb:5 from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri/ffi/libxml.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri.rb:10 from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/www/mechanize.rb:9 from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/www/mechanize.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/mechanize.rb:7 from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/mechanize.rb:36:in `require'' from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'' from C:\Users\Gary\Documents\NetBeansProjects\HTMLTextReplacement\lib\main.rb:5 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hi I am assuming things here because you are on Jruby and windows But you do require those libraries. Nokogiri in particular needs the latest version of LibXml2 and you can run nokogiri -v on your terminal to see if it has been built with the latest version of libxml and the libxml2.dll is in the corrent load path. However I found this on the tenderlove wiki github its a known issue and someone has sugested a workaround for windows: http://github.com/tenderlove/nokogiri/issues/#issue/90 quote "I solved the problem and record them here: http://maodan520.spaces.live.com/blog/cns!E0C8D36B1650926A!237.entry Make sure do not use libxml2 or libxslt, you should use libexslt. Good luck. " I hope that helps On Sep 17, 4:45 pm, "Gary Massing" <gmass...-yBeKhBN/0LDR7s880joybQ@public.gmane.org> wrote:> Hi, > > I''m getting a "Could not open any of [xml2, xslt, exslt] (LoadError)" error when trying to run a simple Ruby program taken from the EXAMPLES.rdoc file of the Mechanize gem. > > The error is in this line of the Nokogiri module of libxml.rb: ffi_lib ''xml2'', ''xslt'', ''exslt'' > > Not sure if there are missing gems, and if so, what to install. Any ideas how to fix this? > > Thanks very much. > > Gary M. > > Program -- main.rb: > ---------------------- > ## Google > require ''rubygems'' > require ''mechanize'' > > a = WWW::Mechanize.new { |agent| > agent.user_agent_alias = ''Mac Safari'' > } > > a.get(''http://google.com/'') do |page| > search_result = page.form_with(:name => ''f'') do |search| > search.q = ''Hello world'' > end.submit > > search_result.links.each do |link| > puts link.text > end > end > ---------------------- > > Resources I''m using: > > Editor: Netbeans IDE 6.7.1 > Gems installed (among others): mechanize-0.9.3, nokogiri-1.3.3-java > Operating System: Windows Vista Home Premium, Service Pack 1, 64-Bit > > Error message stack: > > JRuby limited openssl loaded. gem install jruby-openssl for full support.http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL > C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/1.8/ffi/library.rb:18:in `ffi_lib'': Could not open any of [xml2, xslt, exslt] (LoadError) > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri/ffi/libxml.rb:5 > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri/ffi/libxml.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri.rb:10 > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/nokogiri-1.3.3-java/lib/nokogiri.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/www/mechanize.rb:9 > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/www/mechanize.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/mechanize.rb:7 > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/gems/1.8/gems/mechanize-0.9.3/lib/mechanize.rb:36:in `require'' > from C:/Program Files (x86)/NetBeans 6.7.1/ruby2/jruby-1.2.0/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'' > from C:\Users\Gary\Documents\NetBeansProjects\HTMLTextReplacement\lib\main.rb:5