MacのXAMPPにperlモジュールImagerをインストールする
MacにXAMPPにMovableTypeを入れて、
画像処理用perlモジュールの
Imagerをインストールしました。
今回の記事は、
Macのローカル環境に
MovableTypeを構築する際に必要な
Imager(画像処理用perlモジュール)
をインストールする方法
について書きます。
Mac+XAMPPは何がいいのか?
XAMPPはパソコン上に
Webサーバーやデータベース機能をいれて、
インターネットがなくてもWebアプリを開発できる
環境を作るものです。
MacやWindowsにXAMPPを入れて
ローカル環境にブログツールを入れておくと、
- ブログサイトのテンプレート変更
- PHPでWebアプリの開発
などができます。
サイトを持っている方は、
インターネット環境がなくても
テンプレートデザインの変更などを
自分のパソコン上で出来るので
作業の制約が少なくなります。
Mac+XAMPP+MovableTypeの設定は難しい!
でも、普通のアプリのように、
ダブルクリックでインストール環境というわけには行かないのが
MacとXAMPPの組み合わせなんです。
今回使用する環境
- Mac: macOS Mojave バージョン10.14.2
- XAMPP: 7.3.1
- PHP: 7.3
- Perl: 5.26
- MovableType: 6.3.8
Windows+XAMPP+WordPress
の場合は、参考サイトもたくさんあって
立ち上げも簡単です。
WordPressのパッケージ一式を
XAMPPのルートディレクトリ(htdocs)に
放り込めばすぐに使用できます。
若干のパーミッションの設定はありますが。。。
ただ、MovableTypeとなると少し
クセ
があります。
更に、Mac+MovableTypeとなると
難易度は更に上がります。
理由としては、
- perlモジュールのインストール
ですね。
Unix由来のtarボールやmacporsなどで
予めソフトウェアがインストールされていて
- MySQLなどのデータベース
- ImageMagickなどの画像処理用ライブラリ
などをMacに入れていても
そのソフトウェアを操作するための
- DBD::MySQL (データベース)
- Image::Magick (画像処理)
- GD (画像処理)
- Imager (画像処理)
などのperlモジュールをインストールする必要があります。
これらが、XAMPPに標準でインストール
されていないのでチョツト難しくなります。
特にImageMagickは
ImageMagick (ライブラリ)
Image::Magick (perlモジュール)
のバージョンが合わないと動作しません。
ちなみに
ImageMagickと
Image::Magicking
は別物です。
ImageMagickはLinux操作になれていない方は
まず、選択肢に入れないほうがいいでしょう。
今回は、別な画像処理用ライブラリとして
Imager
をインストールして
MovableTypeでサムネイル作成などの
画像処理が出来るようにします。
インストール前は、MovableTypeで、
こんな感じで表示されます。
MovableTypeにログイン後、
「イメージドライバが設定されていません。」
とメッセージがでます。
また、システム情報では、
「インストールされていない」
と表示されます。
Imagerがインストールされていません。
CPANでperlモジュールインストールに失敗する
一般ユーザでは、Macのターミナルからコマンドを叩いて、
CPANからImagerをインストールすると失敗します。
失敗例
ログインユーザでエラーが発生。
ターミナルから、CPANシェルを立ち上げます。
YGMBP:~ goma$ perl -MCPAN -e shell
Terminal does not support AddHistory. cpan shell -- CPAN exploration and modules installation (v2.18) Enter 'h' for help.
cpan[1]> install Imager
Reading '/Users/goma/.cpan/Metadata'
Database was generated on Thu, 25 Oct 2018 01:29:02 GMT
Running install for module 'Imager'
Warning: You are not allowed to write into directory "/Users/goma/.cpan/sources/authors/id/T/TO/TONYC".
I'll continue, but if you encounter problems, they may be due to insufficient permissions.
Fetching with LWP:
http://mirrors.sohu.com/CPAN/authors/id/T/TO/TONYC/Imager-1.006.tar.gz Catching
error: "Can't write to '/Users/goma/.cpan/sources/authors/id/T/TO/TONYC/Imager-1.006.tar.gz.tmp13574-13574': Permission denied at /opt/local/lib/perl5/vendor_perl/5.26/LWP/Protocol.pm line 114, line 1. at /opt/local/lib/perl5/vendor_perl/5.26/LWP/UserAgent.pm line 982, line 1.\cJ" at /opt/local/lib/perl5/5.26/CPAN.pm line 392, line 1.
CPAN::shell() called at -e line 1
一旦シェルから抜けて、rootで入り直す。
cpan[2]> quit
Terminal does not support GetHistory.
Lockfile removed.
rootのパスワードを入力する。
YGMBP:~ goma$ su root
Password:
sh-3.2# perl -MCPAN -e shell
Terminal does not support AddHistory.
Imagerをインストールしてみたが、
エラーが出た。
cpan[1]> install Imager
Reading '/var/root/.cpan/Metadata'
Database was generated on Sat, 08 Sep 2018 03:29:03 GMT Fetching with LWP:
http://cpan.cermin.lipi.go.id/authors/01mailrc.txt.gz
LWP failed with code[500] message[Can't connect to cpan.cermin.lipi.go.id:80 (Operation timed out)]
ダウンロードサイト
http://perlmirror.indialinks.com/
が"500"のエラーになる。
どうやら、サイトの応答がないようです。
CPANのダウンロード先サイトが原因?
現在のCPANサイトの情報を見てみた。
CPANのコマンドを打ってみる。
コマンド: o conf urllist
cpan> o conf urllist
urllist
0 [http://cpan.cermin.lipi.go.id/]
1 [http://perlmirror.indialinks.com/]
2 [http://mirrors.digipower.vn/CPAN/]
Type 'o conf' to view all configuration items
見慣れないサイトが登録されている。
go.idなんて言うものは、インドじゃないの?
ということで、ダウンロードサイトを調べてみた。
CPANのダウロードサイトを変更する。
cpanのサイトを
http://www.cpan.org/SITES.html
から探す。
日本では、関東、関西などサイトがわかれているようです。
私の場合は、関東(Kanto)を選びました。
関東では、
0 [ftp://ftp.kddilabs.jp/CPAN/]
1 [ftp://mirror.jre655.com/CPAN/]
2 [http://cpan.metacpan.org/]
などがあるので上から登録してみる。
CPANのダウロードサイトの登録方法
新たにCPANでダウンロードしたいサイトを登録します。
コマンド
o conf urllist push サイトURL
で登録します。
例えば、
o conf urllist push ftp://ftp.kddilabs.jp/CPAN/
CPANのダウロードサイトの登録方法
今度は、不要なサイトを削除します。
cpan> o conf
cpan> o conf urllist pop 削除したい URL
例: o conf urllist pot http://perlmirror.indialinks.com/
登録するときは、
cpan>o conf urllist push (登録したいURL)
削除するときは、
cpan>o conf urllist pop (削除したいURL)
となります。
最後に
cpan> o conf commit
を入力して登録を完了する。
実際のダウンロードは、
o conf urllist
で表示される順番でデータを見ていくようです。
今回の登録例では、
0 [ftp://ftp.kddilabs.jp/CPAN/]
1 [ftp://mirror.jre655.com/CPAN/]
2 [http://cpan.metacpan.org/]
の順番です。
再度CPANでImagerをインストールする
CPANのサイトを登録して、再度rootでImagerのインストールをしてみます。
CPANシェルに入って、再度コマンドを打つ。
cpan> install Imager
cpan[]> install Imager
Running install for module 'Imager' Fetching with LWP: puth/authors/id/T/TO/TONYC/Imager-1.009.tar.gz
LWP failed with code[400] message[URL must be absolute] Fetching with LWP:
ftp://ftp.kddilabs.jp/CPAN/authors/id/T/TO/TONYC/Imager-1.009.tar.gz Fetching with LWP: ftp://ftp.kddilabs.jp/CPAN/authors/id/T/TO/TONYC/CHECKSUMS
Checksum for /var/root/.cpan/sources/authors/id/T/TO/TONYC/Imager-1.009.tar.gz ok
Configuring T/TO/TONYC/Imager-1.009.tar.gz with Makefile.PL
done.
|
処理続く。。
Installing /opt/local/lib/perl5/site_perl/5.26/darwin-thread-multi-2level/auto/Imager/Imager.bundle
|
Appending installation info to /opt/local/lib/perl5/5.26/darwin-thread-multi-2level/perllocal.pod TONYC/Imager-1.009.tar.gz
/usr/bin/make install -- OK
最後にOKと出たら、完了です。
cpan> quit
を入力してCPANシェルから出ます。
Imagerがインストールされました。
mt-config.cgiにImagerを設定する
Imagerがインストールできたら、
mt-config.cgiに下記の1行を追加する。
ImagerDriver Imager
改めて確認すると、インストールされていることがわかります。
インストール前
インストール後
なお、perlのパスも設定する必要があるので
忘れずに設定してくださいね。
- スポンサードリンク -
- スポンサードリンク -
コメントやシェア頂けると励みになります!