nokogiri の依存ライブラリ@RHEL ― 2009/05/10
現状最速(?)のruby用のxml parser nokogiriのインストールメモ
とはいえ、nokogiriのインストール自体は
$ sudo gem install nokogiri
だけで終わるので、rpmをインストールする必要のある依存ライブラリのメモです。
libxml2 libxml2-devel libxslt libxslt-devel
あとはこれらの依存ライブラリぐらいで行けるはず。
RHEL5 に RMagick をインストール ― 2009/05/01
予習
RMagick は、ImageMagick または GraphicsMagick を利用した Ruby向け画像操作ライブラリ。 できるだけrpmを利用したいので、今回はImageMagickを利用することにします。
gem でインストールが可能ですが、ネイティブコードのビルドがあるので、 make や gcc、ImageMagickの開発パッケージがインストールされているかを 確認しておいてください。
更にRMagickには、バージョン1系とバージョン2系があり、協働できる ImageMagick のバージョンが異なります。 詳しくはこちら (当然、2系の方がAPIは豊富です)
さて、Redhat Enterprise Linux 5で、オフィシャルのリポジトリからrpmでインストールした場合、 ImageMagickのバージョンは 6.2.8 のはずです。
この為、インストールできる RMagick はバージョン1系ということになります。 バージョン1系の最新(最終?)は 1.15.17 のようです。
インストール
バージョンを指定してインストール。
$ sudo gem install rmagick --version 1.15.17
これで上手くいけば良いのですが、上手くいかないはずです。
わざわざこんなエントリを書いているぐらいですからね
Building native extensions. This could take a while... ERROR: Error installing rmagick: ERROR: Failed to build gem native extension. (略) Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17 for inspection. Results logged to /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/gem_make.out
そして、インストールログを見ろと言われる訳ですが、ログの最後の行が
RMagick configuration completed successfully.
だったりして、さっぱり訳が判りません。
この問題は、ネイティブコードをビルドするgemに共有する問題だと思っているのですが……。
- ネイティブコードをビルドする gem を
- version オプションを指定してインストールしようとすると
問答無用でエラーになるような気がします。 rubygems のソース自体は追っていないので、あくまで推測ですが。
エラー回避(1)
では、何が必要かと言うと、version オプションを使用せずに、固有のバージョンのgemをインストールできれば良い訳です。
幸い、すでに必要なgemファイルは取得されています。 このファイルを指定してやれば、version オプション無しで、固有のバージョンのgemをインストールできます。
$ cp /usr/lib/ruby/gems/1.8/cache/rmagick-1.15.17.gem ~/. $ sudo gem install ~/rmagick-1.15.17.gem
先程よりは、先に進めるはずです。
ちなみに、sqlite3-ruby などはこれでインストールに成功します。
今度のログは、ちゃんと configure が動作した形跡があり、make も動いているようです。 エラーを吐いているのは、post-setup.rb のようです。 スタックトレースの先頭あたりを見ると
setup.rb: entering post-setup phase... post-setup.rb: setting up documentation... /usr/bin/ruby -I /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/./lib -I /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/./ext/RMagick Adispatch.rb (example 1 of 183) /usr/bin/ruby -I /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/./lib -I /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/./ext/RMagick InitialCoords.rb (example 2 of 183) /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.17/./lib/rvg/misc.rb:321:in `get_type_metrics': unable to read font `/usr/share/fonts/default/TrueType/verdana.ttf' (Magick::ImageMagickError)
はい、verdana.ttf を利用したテストでエラーが出ています。
エラー回避(2)
RMagick のインストール中のテストで利用されるTrue Typeフォントは
- arial.ttf
- arialbd.ttf
- arialbi.ttf
- verdana.ttf
の4つです。
ASCIIが揃っていれば良いはずなので、適当なTrue Typeフォントをリネームするか、 これらは、Windowsの標準インストールに含まれるフォントなので(ry
ともかく、なんとかして
/usr/share/fonts/default/TrueType/
にファイルを用意してください。
これまで、True Typeフォントを利用していなければ、ディレクトリも無いはずです。
これで、改めて
$ sudo gem install ~/rmagick-1.15.17.gem
を実行すると、
Building native extensions. This could take a while... Successfully installed rmagick-1.15.17 1 gem installed Installing ri documentation for rmagick-1.15.17... Installing RDoc documentation for rmagick-1.15.17...
はい、インストールに成功しました。
おつかれさまでした。
最近のコメント