前回の続き。
弊社のエンジニアである片岡氏に手伝ってもらって、テストサーバー用のsqlファイルをDBに読ませたところまでいきました。

しかし残念なことに、画像を用いるページで「ImageMagickが無い」と怒られました。

 

やりたいこと:PHPからImageMagickを操作するための Imagickモジュールを入れたい。

Lionの時には、ほとんど他人にやってもらった開発環境のセットアップで”ImageMagick”をインストールしたっけ…なんて思いつつ調べていたら、Mountain Lionにアップデートすると昔の開発環境とともに使えなくなるケースがあるみたいですね。

(参考)→  Mountain Lionで動かなくなったimagickの復活方法

ここがすごく丁寧にかかれているんですが、パッケージ管理ツールのHomebrewでImageMagickのインストールに入ろうとすると、パッケージの管理データが古いのかソースがうまくダウンロードできず、しまいにはgccが無いよと怒られて面倒くさくなってしまったので、別のパッケージ管理ツールである「MacPorts」でやっちゃいました。こちらは何のストレスもなくスムーズにいきました。

手順

1.Macportsをダウンロードしてインストールする
Macportsの公式サイト  からMountainLion用の .pkgファイルをダウンロードして、GUIベースでMacportsインストールを終える。

 

2.環境変数にパスを追加して、Macportsをアップデートする

//bash_profileにパスを追加

$ vim ~/.bash_profile

//以下2行を追加

export PATH=/opt/local/bin:/opt/local/sbin/:$PATH
export MANPATH=/opt/local/man:$MANPATH

//セルフアップデート

$ sudo port -d selfupdate

(参考)→ MacにImageMagickをインストールする方法

 

3.Macportsを使って、ImageMagickのインストールする

//ImageMagickのインストール(20~30分程度)

$ sudo port install ImageMagick

4.PHP/Imagickを入れる

僕の環境だとPECLコマンドがなぜか使えなかったので、Imagickのソースを直接ダウンロードしてモジュールにコンパイルしました。

//ダウンロード

$ curl -O http://pecl.php.net/get/imagick-2.2.1.tgz

//解凍

$ tar zxvf imagick-2.2.1.tgz

//モジュールのコンパイル

$ cd imagick-2.2.1

$ phpize

$ ./configure –with-imagick=/opt/local

$ make

$ sudo make install

//モジュールのコピー

$ sudo cp modules/imagick.so /usr/lib/php/extensions/no-debug-non-zts-20060613/

(参考)→ MacにPHP/Imagickをインストールする, OSX に PECL::imagick をインストール

5.php.iniにモジュールの読み込み設定を書き込み、Apacheの再起動

$ sudo vim /private/etc/php.ini

//適当なところに追加

extension=imagick.so

//Apache再起動

$ sudo apachectl restart

 

これで無事に、MountainLionの開発環境(PHP)上でImageMagickが動くようになりました!仕組みがわかってくると黒い窓への恐怖感も緩和してくるものですね。macportsの環境変数の追加だったり、モジュールのコピー先がApacheのExtensionsをちゃんと指してるかどうかなどがよく行き詰るところだと思われます!