目次
はじめに
PHPでImageMagickを使用しているシステムにPerlからもImageMagickを使用できるように設定したので手順をメモる。
前提条件
次のシステムに追加でImage::Magick(PerlMagick)をインストールする。
Apache:2.4.57-win64
PHP:8.1.2-Win32-vs16-x64
ImageMagick: 7.1.0-18 Q16-HDRI x64
imagick:php_imagick-3.7.0-8.1-ts-vs16-x64
インストールバージョン検討
最初は「Strawberry Perl」でインストール出来ないか試行錯誤したが上手くいかなくて,バージョン合わせが結構大変で挫折した。ネット検索では「Strawberry Perl」のppmからのインストールがしやすいイメージだったが,今後の課題として取っておくことにする。
PHP導入前には,ActivePerlからImageMagickを使用していたのを思い出してその組み合わせのバージョンを調べてファイルを準備した。かなり古いバージョンだ。
ActivePerl v5.16.3
ImageMagick-6.8.8-Q16
以前のシステムではこの組み合わせで上手くいっていたのだが,現状のImageMagickのバージョンと異なる(古い)ので,普通のインストールではダメだと思う。
そもそも同じバージョンのImageMagickを使用するからバージョン合わせが困難になっている。PHPとPerlでそれぞれに合った別のバージョンのImageMagickを使用すれば可能なのだが・・・。
インストール
ActivePerl
ActivePerl v5.16.3をインストール
setup画面
I accept the・・・・ 選択
D:\usr\localフォルダーにインストール
確認し「Next」
確認し「Next」
確認し「Install」クリック。
ActivePerlをインストール後にWindowsを再起動してからImageMagickをインストールする。(ImageMagickのインストーラーから確実に認識させるため)
ImageMagick
ImageMagick-6.8.8-Q16をインストール
setup画面
I accept the・・・・ 選択
確認し「Next」
D:\・・・にインストール
確認し「Next」
「Install PerlMagick for ActiveStatePerl v5.16.3」をチェックすれば,Perlインストール後に「Image::Magick」がインストールされる。(3ステップ後)
確認し「Next」
インストール中
「Image::Magick」のインストール画面
Perlがインストールされていないか又は認識出来ない場合はこの画面に代えてエラー画面が出る。
確認し「Next」
確認し「Finish」
動作確認
PerlのImage::MagickテストはOKだったがPHPのImagickはダメになった。
まあ,予想通りの結果だ。
環境変数のPathの順序変更
PHPのImagickはダメだったので,元に戻すため「ImageMagick 7.1.0-18 Q16-HDRI x64」を上書きインストールしたらPHPのImagickとPerlのImage::Magickの両方がOKとなった。
上書きインストールで変わった箇所は環境変数のPathの順序が入れ替わったことだ。
古いWindowsでは入れ替わるが,比較的新しいWindowsでは位置はそのまま残る。
「ImageMagick-7.1.0-Q16-HDRI」の後に「ImageMagick-6.8.8-Q16」を持ってくることで,上手くいっているようだ。
PHPとPerlでそれぞれに合った別のバージョンのImageMagick使用で両立することが出来た。
PerlのImage::Magickは古いバージョンだが,メイン使用でないのであまり問題ないと思う。