Vagrant環境にImageMagickをインストールしてみた
こんにちは、西山です。
ワタシ、Movable Typeを愛用しているのですが、ローカルでの検証などには「Vagrant」を利用しています。
Vagrant+VirtualBoxでMT6を動かしてみた。- 2013.12.18
なんですが、これまでぜんぜん気がついていないことがありました。
そう、利用しているVagrant環境にImageMagickが入っていないことに。
Movable Type用の画像アップロード補助機能プラグインとかリリースしているのに、検証はここ以外でもやっていたせいか、ぜんぜん気がついていませんでした...(汗)
プログラマさんに「試しにターミナルでidentifyってコマンド入れてみてらえますか?」と言われ...、ターミナルで、MTインストールディレクトリへ移動(cd hoge)し、Vagrant を起動(vagrant up)、vagrant sshでSSHアクセスして[vagrant@localhost]になって、identifyコマンドを実行してみると...
error while loading shared libraries: libMagickCore-6.Q16.so.1: cannot open shared object file: No such file or directory
というわけで、ImageMagickが入っていないことが判明(汗)
これをインストールする旅へ出発です!
1. まずはImageMagickをインストール!
まずはVagrantにSSHでアクセスして、ユーザーをrootに切り替えます。
vagrant ssh
で、[vagrant@localhost]になったあと、suとコマンドを入れるとパスワードが聞かれるので、vagrantと入力。
すると、[root@localhost vagrant]# という感じでrootユーザーになります。
そこで、いざImageMagickをインストール!(追記あります)
yum -y install --enablerepo=remi ImageMagick-last
ずらずらずらーっとコマンドが流れていき、Complete!と表示されたらインストール完了。
一旦、rootユーザーから exit で vagrantユーザーに切り替えて、改めてidentifyとコマンドを入れてみると...
Version: ImageMagick 6.9.2-5 Q16 x86_64 2015-11-01 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
と表示され、インストール完了!!
あわせてバージョンも確認。
[vagrant@localhost ~]$ rpm -qa | grep -i imagemagick
ImageMagick-last-libs-6.9.2.5-1.el6.remi.x86_6
ImageMagick-last-6.9.2.5-1.el6.remi.x86_64
よし!と思ったのですが、実はこれには罠がありました...
2. ImageMagick-perlをインストール
これで良いのかと思っていたんですが、ImageMagickを利用した機能が動かない...
なぜ?と思っていたら、ImageMagick-perlというモジュールがインストールされていないらしいことが判明...。
勘違いしてる人がたまにいるのですが、ImageMagickとImage::Magick(別名PerlMagick)は別物です。
ImageMagickとは、C言語で書かれた画像処理ソフトウェア・ライブラリ一式のことです。 Image::Magick(別名PerlMagick)とは、PerlからImageMagickを操作するためのPerlモジュールです。(こういうのをバイディングといったりします。)
[Perl]ImageMagickとImage::Magickの違いについてそろそろ一言いっておくか。- DQNEO起業日記
むむむ...そうなのか(あまり良くわかっていません)
というわけで、まずは一度インストールしたImageMagickをremove
yum remove ImageMagick
そして再度、ImageMagick-Perlをインストール!
yum -y install ImageMagick-perl
ずらずらずらーっとインストールが進み...あらためてComplete!
確認のためにidentifyしてみると...
Version: ImageMagick 6.7.2-7 2015-07-23 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2011 ImageMagick Studio LLC
バージョンはちょっと下がった(6.9→6.7)けど、インストール完了を確認!
プログラムの動作を確認すると...無事に動きましたー!
なんだか、ちょっと凄いことやってのけた気分(笑)
と...、Vagrantを利用してMovable Typeを、しかも検証用に利用しているノンプログラマーって、そうそういないとは思うのですが、せっかく覚えた手順だったのでブログ記事にまとめておきます(笑)
間違っているところがあったら、できればやさしくご指摘ください(汗)
追記:2016年5月2日
rootユーザーになった後、
yum -y --enablerepo=remi install ImageMagick-last ImageMagick-last-perl
で、最新版をインストールできます。