无法在Windows上安装libxml-ruby

首先感谢你的时间。

我一直在我的Windows 8操作系统安装libxmlruby麻烦。 我已经安装了ruby,并且希望专门使用libxml来修改xmls,因为我的团队的其他成员已经开始使用libxml。 问题是,他们正在使用Linux和我在Windows上。 我可以尝试把所有东西都放在一个虚拟主机上,但我认为我不需要。

他们也有安装在Linux上的问题,但他们的解决scheme和问题不同于我的。

C:\dev\school\ece450\MyBPM>gem install libxml-ruby Temporarily enhancing PATH to include DevKit... Building native extensions. This could take a while... ERROR: Error installing libxml-ruby: ERROR: Failed to build gem native extension. C:/Ruby200/bin/ruby.exe extconf.rb checking for socket() in -lsocket... no checking for gethostbyname() in -lnsl... no checking for atan() in -lm... yes checking for inflate() in -lz... no checking for inflate() in -lzlib... no checking for inflate() in -lzlib1... no checking for inflate() in -llibz... no *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=C:/Ruby200/bin/ruby --with-iconv-dir --without-iconv-dir --with-iconv-include --without-iconv-include=${iconv-dir}/include --with-iconv-lib --without-iconv-lib=${iconv-dir}/ --with-zlib-dir --without-zlib-dir --with-zlib-include --without-zlib-include=${zlib-dir}/include --with-zlib-lib --without-zlib-lib=${zlib-dir}/ --with-socketlib --without-socketlib --with-nsllib --without-nsllib --with-mlib --without-mlib --with-zlib --without-zlib --with-zliblib --without-zliblib --with-zlib1lib --without-zlib1lib --with-libzlib --without-libzlib extconf failure: need zlib extconf failed, exit code 1 Gem files will remain installed in C:/Ruby200/lib/ruby/gems/2.0.0/gems/libxml-ru by-2.7.0 for inspection. Results logged to C:/Ruby200/lib/ruby/gems/2.0.0/extensions/x86-mingw32/2.0.0/li bxml-ruby-2.7.0/gem_make.out 

我已经尝试安装zlib(二进制文件),并指向zlib二进制文件。 这并没有真正的帮助。

所以,现在我googling 🙂

好吧,我自己终于厌倦了这个问题(最终放弃并转向虚拟机)。 所以我花了一些时间摆弄,最终得到了一个可靠的方式来获得安装Ruby(2.2.3截至目前)和libxml-ruby在Windows上。

  1. 从rubyinstaller.org下载并安装最新的Ruby架构
  2. 从相同的页面下载匹配的DevKit
  3. 提取DevKit,并按照设置说明,特别是第4步
  4. zlib1.dll<ruby_install_dir>/bin复制到<ruby_install_dir>/lib
  5. 下载MinGW iconv软件包,并将mingw64/lib所有内容提取到<ruby_install_dir>/lib
  6. 下载libxml的Windows(见下文)。 lib的内容解压缩到您的<ruby_install_dir>/lib目录,并将其include目录的内容<ruby_install_dir>/include<ruby_install_dir>/include
  7. 幸运的是, gem install libxml-ruby现在应该可以工作了,但是你可能需要尝试一些不同的参数给安装程序。 最终我需要gem install libxml-ruby -- with-xml2-include=C:\Ruby22-x64\include\libxml2 --with-iconv-include=C:\Ruby22-x64\include

由于StackOverflow只允许我在回答中发布两个链接;

我在Windows找到了64位版本的libxml
https://forge.imag.fr/frs/?group_id=184&release_id=320

另一种可能性是ftp://ftp.zlatkovic.com/libxml/64bit/

但似乎都不是官方的资料来源,所以当你阅读这些资料的时候,不会保证它会在周围;)

没关系。

我通过互联网旅行,决定使用虚拟机,并在Linux上运行ruby。 耶1小时安装….

这里是我的旅程结束http://rubyonwindowsguides.github.io/book/ch02-05.html

谢谢阅读。