2007-08-11

perlsh を OSX 10.3 + PPC 環境にインストール

なんか psh は高機能すぎて目的と違う気がしてきたので、結局最初の予定通り perlsh をインストール。以下手順。

  1. cpan から install Term::ReadLine::Gnu
  2. OSX 10.3 + PPC 環境では readline.h が見つからずに compile 失敗
  3. 手元に Fink で入れた Readline があったので、それを使って compile
  4. perlsh スクリプトを PATH の通ったところへ install

3 では

~/.cpan/build/Term-ReadLine-Gnu-1.16

に入って

perl Makefile.PL --prefix=/sw
make
sudo make install

Fink じゃない人は /opt とか適当に書き換えるよろし。

4 では

cd eg
sudo install -m 0755 perlsh /usr/local/bin

あと。perlsh は

#! /usr/local/bin/perl

になっているので、これを自分の使っている Perl インタープリタのパスに書き換えてやる必要あり。

僕にもできた。

ただ。これがどれくらい便利なのかはまだよく分かりません。


ちなみに、インタラクティブに Perl を使いたい場合、選択肢はまだまだあるらしい。psh の中の人が書いた

psh - Perl SHell

のいちばん下の方にある比較表が役に立つかも。

[追記] てゆーか fink に term-readline-gnu-pm581 があった。これならコンパイルエラーとか考える必要なかった。ただ結局ソース手に入れて eg/perlsh をごにょごにょ、っていう手順は必要だけど。

インストール済みモジュール一覧

use ExtUtils::Installed

$installed = ExtUtils::Installed->new()
$installed->modules()

で採れる。static に呼んでも採れないっぽい。

.perlshrc

に2行目まで書いておくと楽かも。my つけちゃうと実行後解放されて呼べなくなるので注意。

perldoc perllocal 方式はなんかよく分からなかったので別解を探しましたとさ。これで少しは楽になったかも。

※ 不要になった psh は make uninstall しようとしたらそのやり方は古いからダメって怒られ、結局削除されないのんで、locate psh で探しまくって削除しまくりました。

About

例によって個人のなんちゃらです