もういろいろダメポと

FreeBSDにmod_perlを入れてみると、どうにもCGIモジュールが動きません。しゃーないからソースおっかけてみたら、CGIモジュールの中でApache::ほげほげ を呼んでいるようで、そこでこけてるようです。でもって今回入れたのはApache2用のmod_perlのモジュールなので、Apache2::ほげほげを読み込んでもらわんと困るわけです。

ところで、CGI.pmはperl標準モジュールなのです。なのに、その中に非標準モジュールを読み込むコードが入っているわけです。これはひどい。

perlのバージョンを上げれば解決しましたが、そうすっとこんどはApacheが atollがないとのたまわり、起動しません。

atollは strtollとほぼ同等品で、いつのころからかBSDに入った模様です。perlがそのライブラリがあるので喜んで使うのでしょう。おそらく手動でperlをインストールすれば自動でライブラリのあるなしを検索して、ない場合はstrtollを使うと思うんですが(未確認)、Apacheを作ったころにはなかったのでダイナミックリンクに失敗するんでしょう。

そもそもatollもstrtollも置き換えたところでそんな速度に差があるわけでもないだろうし、素直に、ほとんどOSに入っているstrtollをつかっとけばいいんじゃないかと思うんですが、まったく余計なことを・・・ぶつぶつ・・・

まぁ、これはApacheを再コンパイルしといたほうがよいだろうということで、今度はApacheをporsから再コンパイルしようとしたら、今度はexpatのバージョンが古いとのたまわります。

expatは依存が深すぎて(80個くらいのportsが影響)コンパイルしなおす勇気も気力もなし。つか天下のApacheなんだから多少古いバージョンでもコンパイルでいるっしょ。

ということでMakefileからexpatのバージョンチェックをはずして強引にコンパイルしました。

最近のフリーソフトはいろいろなところにいろいろな問題があるようです。ラクするために導入したはずのportsとかも足かせに。

これからは主導で丹念に一個一個インストールの時代かな。
Posted by issei

カテゴリ: 雑記