perlsh 導入メモ

| コメント(0) | トラックバック(0) | このエントリーを含むはてなブックマーク

インタラクティブな対話的シェル perlsh にあこがれて Debian on coLinux にインストールを試みたんだけどどうにもうまくいかない、インストール時に小一時間どころではなく数日はまったのでメモ。

とりあえず Term::ReadLine::Gnu をインストールしないといけない。っがしかしインストールしようとすると libtermcap.a, libncurses.a or libncurses.so が必要ですと文句を言われる。 libtermcap.a を apt-cache search で検索かけると termcap-compat にあるというから調べてみたけどすでにインストールされてて libtermcap.a 自体はみつからない。/usr/lib/ の中も調べたけどみつからない。じゃあ libncurses.a を探してみたけどこれも見つからない。色々検索した結果 ncurses5-dev にそれらは入ってるらしいことがわかる。んでインストールしてみたら libtermcap.so ってのが入って libtermcap.a の代わりになるみたいだった。

んじゃぁもう一度 cpan だなとインストールかけると今度は readline が見つからないと文句を言い出した。これも探してみたらインストールされてますと Linux は言うんだけど、さっきの例があるから dev が怪しいなと思い libreadline5-dev をインストール、これがビンゴで見事インストールできた。

そうしたら、.cpna/ にソースが出来るから、この中の eg/ に入っている perlsh を PATH の通ったディレクトリに放り込む。これで OK ! あとはシェル使うみたいに .perlshrc を作ってそこに設定を書けば自由に使える。

僕の coLinux はそんなに多くのツール入れてなくて Perl 開発環境として動く最低限しか積んでなかったのが悪かったみたい。たぶん普通の人はコンパイルするのに色々ツールを入れてるんでしょうねぇ。

手順をまとめると

  1. apt-get install で ncurses5-dev と libreadline5-dev をインストール
  2. cpan 起動して Term::ReadLine::Gnu をインストール
  3. ホームディレクトリの .cpan/build/Term-ReadLine-Gnu-1.16/eg/perlsh を PATH の通ったディレクトリに入れる

以上。

ちなみに Mac OSX でも同じ症状で cpan 経由でインストール出来ない。たぶん似たような物がパッケージ化されてると思うので今度探してみます。あと色々調べた結果ですが、どうやら libtermcap や libncurses はちょっと古いライブラリみたいで最近のデストリビューションには含まれていないみたいです。/etc/terminfo/ 以下に含まれている物を使えみたいなことが書かれていました。英語弱いので確かではないですけど。

参考

トラックバック(0)

トラックバックURL: http://www.hasta-pronto.org/mt/mt-tb.cgi/83

コメントする