2017-03-08 11 views
0

libxml-ruby gemのインストールに関する問題をほとんど見てきましたが、この問題は解決されませんでした。私は現在Ruby 2.3.3を実行しています。Windows Rubyバージョン2.3.3用libxml-rubyのインストールに関する問題。 -lxml2でxmlParseDoc()が見つからない

gem install libxml-ruby -- --with-xml2-lib=C:\Ruby-2.3.3\lib --with-xml2-include=C:\Ruby-2.3.3\include 

た問題は次のとおりです:

これは、私が使用している現在のコマンドである

checking for libxml/xmlversion.h in /opt/include/libxml2,/opt/local/include/libxml2, 
/usr/local/include/libxml2, 
/usr/include/libxml2... yes 
checking for xmlParseDoc() in -lxml2... 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. 

xmlParseDoc()Parser.h中ですが、どこかで私は見つけることができません不足しています。誰かがこの同じ問題にぶつかり、解決策を見つけましたか?


私は同じコマンドでlibxml-ruby 2.7にダウングレードしたときにうまくいった。私はまだ新しいバージョンがインストールできない理由を理解したいと思います。私は最終的にこの問題を引き起こしていた2.8.0以上が必要です。

+0

Windowsマシンで開発する必要がある場合、私はUbuntuを含むVMを使用し、その環境で開発します。 * nix環境を使用して、Microsoft以外の言語で書くのはずっと簡単です。 –

+0

'extconf.rb'の助言に従って、' mkmf.log'ファイルをチェックしてください。 – nwellnhof

+0

Windowsでなければならないのですが、mkmf.logファイルを調べましたが、これは同じ情報です。この問題の修正を見つけることはできません。 – Tyler

答えて

0

最終的に解決策が見つかりました。私のために働いたのは、私が最初にこのsolutionの指示に従ったことです。不足している部分をlibiconvから見つけなければならなかった。私はhereからそれらを得た。私はそのlibを抽出し、上記のソリューション(Ruby libにlibを含める、Rubyインクルードに含める)のように、コンテンツをインクルードします。エンコーディング後、#include <iconv.h>をencoding.hに変更しなければなりませんでした。これは、以前にRubyのインクルードディレクトリに展開された#include <path-to-/iconv.h>に変更する必要がありました。私はgem install libxml-ruby -- with-xml2-include=C:/Ruby23/include/libxml2 --with-iconv-include=C:/Ruby23/includeを実行することができました。

関連する問題