Memo

MAMP 3.xでPerlが動くというのでアレコレ試してみました

環境が変わってなんだかんだと忙しく働いていますが元気です。

Macのローカル環境ではずっとMAMPを使っています。これがまた優秀すぎて、ずっとバージョンアップしてなかったんですが、MAMP 3.x系からPerlもImageMagickも使えるということを知って、さっそく1.x系からバージョンアップしました!

バージョンアップ簡単すぎ!

バージョンアップというか、新しいバージョンをインストールするという形なんですが、これがまた楽ちんでした。新しい方をインストールすると、古い方のフォルダをリネームし、データが入ってるフォルダ(htdocsやdb)を新しいフォルダに移し替えてくれるんです。

バージョンアップ面倒くさそうだな…とか思ってましたが、ここまで簡単だったなんて…。もっと早くやっておけば良かったよ。

Perlが使えるようになったらしいが…動かない!

いきなり動かなくてちょっと凹みました。原因は以下の通り_(:3 」∠ )_

原因1)Perlのパスが違った

よくあるサーバでは「#!/usr/local/bin/perl」が一般的ですが、MAMPの場合は「#!/usr/bin/perl」で動きます。

原因2)パーミッション設定してない

ずっとPHP触ってて、久々のPerlで忘れてましたが、Perlは「パーミッション設定」が必要だったわ!

( ˘ω˘)oO(昔、Windows+XAMPPでPerl弄ってた時は必要なかった気が…)

ローカル環境でのパーミッション設定、やり方としては「ターミナルを使ってchmod」「Transmit(ftpソフト)でchmod」の2つがあるようです。黒い画面恐怖症の私は何の迷いものなく「Transmitでchmod」です…!

原因3)改行コードは「LF」で

パスもパーミッションも設定したのに動かない…。ちなみに動かそうとしてたのは、Perlユーザーなら知ってる人も多そうな、kent webの「PerlChecker」。

文法は大丈夫のはずだが…とエラーログを観てみると「(2)No such file or directory: exec of 〜」

( ˘ω˘)??

ググってみると、こんなページを発見。

(2)No such file or directory: exec of '/var/www/cgi-bin/test.cgi' failed – 犬ターネット

改行コードは「LF(\n)」じゃないとダメらしい。借りてるサーバでは動いてたのに_(:3 」∠ )_ MAMPでは改行コードを「LF」で統一する必要があるみたいです。

そんなわけで、Perlは動かせるようになりました!

ImageMagickは動かない(´・ω・`)

フォルダ内にファイルは存在するものの、ImageMagickもImagickも動かず。どうやらMAMPの状態で入ってるファイルでは足りないらしく、MAMP pro3(有料版)にすれば動くようになるらしいです。マジかー_(:3 」∠ )_

コマンドラインで入れるしかないようだ

しかし、ImageMagickはちょっと難しいけど無償でインストールできるもののはず!ということで色々調べた結果、時間を作ってコレを試してみようと思います。

ImageMagick unter MAMP | NIMIUS Blog(ドイツ語)
MacにHomebrewでimagemagick入れようとした時の対処 | Homebrew | alperithm

黒い画面恐怖症、がんばります_(:3 」∠ )_

参考記事)
Macのローカル環境(MAMP)でCGI・PHPを動かす | 9142.NET
(2)No such file or directory: exec of '/var/www/cgi-bin/test.cgi' failed – 犬ターネット

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

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