TermExtract をとりあえず動かしてみるまで

専門用語(キーワード)自動抽出用Perlモジュール
http://gensen.dl.itc.u-tokyo.ac.jp/termextract.html
 とあるレンタルサーバにて(多分 redhat9.2)。 make とか使えないので、 TermExtract/TermExtract フォルダを cgi と同じディレクトリに置く。サンプルの行頭に

print "Content-Type: text/html\n\n<xmp>";

と入れて、他適当にcgi用に変更、起動してみるとエラー。
 ログが確認できないので何がエラーなのか分からない。適当な単語でgoogle検索して、 KCatch なるモジュールを発見。エラーをHTML表示してくれる。
http://www.kawa.net/works/perl/catch/news.html
 perl使うの久しぶりなんで苦労した……php万歳(;´д⊂)
 で、「Can not open DB_File $file」エラーが出ていることを知る。うーん、なんで開けないのか分からない。
 DB_File のサンプル( http://www.att.or.jp/perl/man/db_file.3pm.html )を動かしてみたら動くようなので TermExtract の問題のようだ。"Can not open DB_File" でgrepして見つかった Calc_Imp.pm の723行目あたりを

        my $db = tie (%$hash, 'DB_File', $file, $mode, '0644', $DB_BTREE)
            || die "Can not open DB_File $file  $!\n";

と、$! も加えてステータスも返すようにしてみる。と、パーミッションエラーとのこと。上の引用行の 0644 を 0666 にしてみたら動きました。
 で、語の重要度みたいなのを計ってくれるのね。いろいろ使えそうです。
 とりあえずサンプルを変更。chasen解析済みテキストを標準入力から読み込んでタブ区切りテキストとして出力するように。php から手軽に使えるようになった。php万歳ヽ(´ー`)ノ