PerlMagick(Image::Magick)をWindowsで利用する

  • このエントリーをはてなブックマークに追加
  • LINEで送る

PHPがWebプログラミング言語として業界標準になっています(と思っています)が、従来のcgi(Perl)で記載されたページもまだまだ盛んです。

そんな中、Perlで画像操作を行う際にPerlMagick(Image::Magick)をWindowsローカル環境でデバッグする必要がありましたのでPerlMagick動作までの作業を記載します。

一般にPerlと言えばActiveStateのActivePerlを思い浮かべますが今回はこちらではなくStrawberryPerlを利用します。
理由はActivePerlではPPM(Perl Package Manager)やCPAN(Comprehensive Perl Archive Network)からImage::Magickの導入ができなかったからです(力不足も否めませんが…)。
StrawberryPerlではPPMから導入できましたので簡単に紹介します。

  1. インストール

    ではStrawberryPerlのインストールから始めます。
    サイト(http://strawberryperl.com/)から環境にあった最新版をダウンロードしましょう。
    2016年1月20日現在では「5.22.1.2」が最新でした。では、早速インストーラ(strawberry-perl-5.22.1.2-64bit.msi 注:私の環境は64bitです)を起動します。

    • ウェルカム
      sp01
    • ライセンス
      sp02
    • フォルダ選択
      sp03
    • 準備完了
      sp04
    • 進行中…
      sp05
    • 完了
      sp06
  2. PerlMagick導入

    コマンドプロンプトからPPMを起動します。
    PPMのプロンプトがきたら「install Image::Magick」を実行します。

    PPMのプロンプトが返ってきたらインストール終了です。
    最後にエラーが出ますが動作には影響ありません。

  3. httpサーバーの起動

    Apacheでもよかったのですが、手っ取り早く確認するためにANHTTPDを利用します。
    公式の配布は終了しているのでこちらのサイトのダウンロードリンクから取得します。ダウンロード対象は「http://ratan.dyndns.info/httpd.zip」です。
    解凍すると早速利用可能になりますので、解凍フォルダ内にあるhttpd.exeを実行します。
    ppm01
    起動するとWindwosの通知領域にアイコンが表示されますので
    ppm02
    右クリックのコンテキストメニューからオプション一般を選びます。
    ppm03

  4. httpサーバーの設定

    では早速サーバーの設定を行います。
    ppm04

    • ドキュメントルート

      HTTPサーバーが管理するルートフォルダを指定します。
      例では「c:\homep」としています。

    • ポート番号

      特に触る必要もありませんが80番を既に利用している方は他のポート番号を指定してください。

    • .pl,.cgi動作の設定

      拡張子「.pl,.cgi」を選択すると編集ボタンが有効になりますので、編集ボタンを押します。
      ppm05
      こちらでは実行プログラムにStrawberryPerlを指定します。標準インストールであれば「C:\Strawberry\perl\bin\perl」になります。「C:\Strawberry\perl\bin\perl.exe」と記載してもOKです。
      チェックボックスは任意ですが、とりあえず動かしたい方は上記の通り指定してみてください。

    • 変更の適用

      実行プログラムの内容、オプションの内容をOKボタン もしくは 適用ボタンで確定します。変更が適用されるとhttpサーバーが再起動し、変更内容が反映されます。

  5. Image::Magickの確認

    テスト用cgi(c:\homep\test.cgi)を作成します。

    cgiを作成したら早速ブラウザからアクセスします。ブラウザのアドレスバーに「localhost/test.cgi」と入力してページを開きます(ブラウザに表示されている画像はCC-BYによってライセンスされています)。
    ppm06

    creativecommons_byクリエイティブ・コモンズ(表示)

  6. 終わりに

    比較的簡単にImage::Magickの利用ができたかと思います。
    ANHTTPDはレジストリを触っていないので不要の場合は、httpサーバー停止後にフォルダごと削除で大丈夫です。StrawberryPerlはコントロールパネルのプログラムの削除からどうぞ。

  • このエントリーをはてなブックマークに追加
  • LINEで送る

SNSでもご購読できます。

スポンサー リンク

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください