ウゼー。激しくウゼー。WindowsでPerlの開発をするのはここまで大変なものなのか。
Windows + xampp + perl-addonによるMovable Typeプラグインの開発という記事を書いたものだが、はまりまくった。
Movable Typeで試したいことがあったのでモバイルノートに開発環境を整えようとしてみたのがはじまりだった。
しかし、結論から言うと最新のxamppを入れるとうまく設定できなかったので、xampp 1.6.6aとPerl-addonを使った。
- xampp-win32-1.6.6a-installer.exe
- xampp-win32-perl-addon-5.8.8-2.2.8-installer.exe
このエントリを書いてる時点での最新は1.6.8でapacheは2.2.9なわけなんだが、だいぶ前にインストールしたときはまともにPerlが動かなかった。下記フォーラムにあるように実行するとなぜか5.10のモジュールのはずなのに5.8のdllが要求されるという問題があった。
Perl58 Error with Xampp 1.6.7 and Perl 5.10.0-2.2.9
で、最近みてみたらxampp-win32-perl-addon-5.10.0-2.2.9-pl2-installer.exeなるものがあったのでインストールしてみた。5.8が要求される問題は起きなかった。が、Movable Typeはまともに動かない。そもそもDBD::mysqlが入ってない。
入れれば良いわけなのだが、ppmが入ってない。とりあえずCPANで入れようとしたのだが結局インストールできなかった。tar.exeとかを入れてmake.exeはVisual Studioのを指定して良い感じに動くんだが、最後の最後で、mkdir C\C:\xampp\perl… でディレクトリが作成できませんとか言われる。誰がドライブレターを重複させてくるのかさっぱりわからない。そもそもPerl素人だからどこから疑ってよいのかまったくかわからん。
というか、今までどうやってたんだっけ?と思い1.6.6aとPerl 5.8.8を入れた。ppmも入ってるし、DBD::mysqlとか何も追加でインストールしなくてもMovable Type動いたよ。とりあえずPerlに関しては実績のあるXAMPPのバージョンを使うのが良いと言うことを学習した。
そしてディレクトリが変わったらまたError message:couldn’t create child process: 720003が発生したので、Directoryディレクティブの中にScriptInterpreterSource Registry-Strictを追加して、レジストリを追加した。(詳しくはWindows + xampp + perl-addonによるMovable Typeプラグインの開発を参照)
なんか、世の中ではc:\xampp\perl\bin\perl.exeをがんばってc:\usr\bin\perl.exeへリンクを張るためのワザを結構見かけるのだが、環境によってはScriptInterpreterSource Registry-Strictは使えないものなのだろうか?そこまでやらないと動かないのなら、そもそもWindowsでPerlの開発しないだろうなぁ。このマシンがもうちょっとパワーがあるならVMWare動かすのだが・・・