Ubuntu 8.04 LTSにSledge1.11を何とか入れたメモ

2008/10/07 11:45

※ 商品のリンクをクリックして何かを購入すると私に少額の報酬が入ることがあります【広告表示】

さーて、パーラーになるべく、sledgeをインストール。

sledgeのサイト からDownloadを辿ってtarをもらってくる。バージョンは1.11だった。

解凍してINSTALLを読むと、必要なものをCPANから入れろって言われる。

  $ sudo perl -MCPAN -e 'install Bundle::Sledge'

残念ながら、ftpが通らないのさ。

CPAN.pmを直にいじってどうのこうのと書いてあるサイトにぶち当たったので(ctl+cでっていう技もあったらしいが、手元ではcpanシェルから抜けてしまってどうにもならず)、CPAN.pmを探す。なんだかみんながあるって書いてる場所にない。

俺の Ubuntu 8.04 LTS は /usr/share/perl/5.8.8/CPAN.pm にあった。

Defaultsiteの設定を、書き換えた

改めて、がつがつエンターを連打して進む。

国を選べといわれるので、仕方なく日本を選んで、サーバを選べと言われるので仕方なくftpのサーバを選ぶ。エンターキーを叩くと、自由にサーバを入れろといわれるので、httpのサイトを指定した。

その後、しばらくftpのサーバからバカみたいにfetchしようと試みる。何回か失敗するとhttpのサーバにアクセスしてあっという間にとってくるんだけど、次のファイルもまたftpにトライするorz。

しばらくすると、 cpan のバージョンがうんたらって出るので、一度シェルを止める。~/.cpan/CPAN/MyConfig.pmができているので、urllistの値を編集してしまう。

もう一度、 sudo perl -MCPAN -e 'install Bundle::Sledge' ってやったらすごい勢いでcpanからモジュール持ってくるよ。

なんてこといわずに、とりあえずの設定ファイル(~/.cpan/CPAN/MyConfig.pm)をさらしとけば困らないんだろうな。

多分、所定の場所に置けばそれ以外は変更しないでもチャカチャカ進むようになるんじゃないかな?

各種Pathは変えてね。Perlの人はこういうゴミが散乱するの困ったりするのかな?

しかーっし!

まだ戦いは終わっていなかった。

なんだかモジュールが足りないらしい。

  perl Makefile.PL
  Warning: prerequisite Apache::Reload 0 not found.
  Warning: prerequisite Apache::Request 0 not found.
  Warning: prerequisite Digest::SHA1 0 not found.
  Warning: prerequisite Template 0 not found.
  Writing Makefile for Sledge

まず、きちんとインストールされてるか確認しろ、ということらしい。

  $find `perl -e 'print "@INC"'` -name 'Template.pm' -print
  /usr/local/share/perl/5.8.8/HTML/Template.pm
  /usr/share/perl5/Debconf/Template.pm
  find: /usr/local/lib/site_perl: No such file or directory
  ./opt/Sledge-1.11/blib/lib/Sledge/Template.pm
  ./opt/Sledge-1.11/lib/Sledge/Template.pm
  find: ./.cpan/build/Time-HiRes-1.9715: Permission denied
  ./.cpan/build/Template-Toolkit-2.20/blib/lib/Template.pm
  ./.cpan/build/Template-Toolkit-2.20/lib/Template.pm
  ./.cpan/build/HTML-Template-2.9/Template.pm
  find: ./.cpan/build/HTML-Template-2.9/blib/temp_cache_dir: Permission
  denied
  ./.cpan/build/HTML-Template-2.9/blib/lib/HTML/Template.pm

HTML/Template.pmとかは違うらしい。で、Template-Toolkit???/Template.pmがそれらしいんだけど、.cpan/buildにあるだけだと、インストールが完了していない。

なんとかいんすとーるを試みて(sudo perl -MCPAN -e 'install Template')も、エラーがいっぱいでて困る。今のところPerlを追える気がしない。

とりあえず、なんとなく NO! で逃げてみた。

  Do you want to build the XS Stash module? [y] n

続いて、Digestを入れた。が、SHA1が入らない。。。

エラーを眺めると、ななだかヘッダファイルが足りないっぽい。ubuntuのパッケージマネージャでlibcrypt11-devをインストール。SHA1も入った。

  $ sudo perl -MCPAN -e 'install Digest::SHA1'

Apache::なんとか、はapache1.3系が必要らしいのでパッケージマネージャは使えない(今のubuntuでは、apache1.3は古くて使えないフ ラグがたっているらしい)

apache_1.3.41.tar.gzとmod_perl-1.0-current.tar.gz(1.30)をダウンロードしてきてインストール。

いきなりECHOがこわれているといわれたので、ちょいちょいと対処

  $ rm -f /bin/sh
  $ ln -s /bin/bash /bin/sh

apacheのインストール

  $ ./configure --enable-module=so --enable-module=proxy --enable-
  module=rewrite
  $ sudo make
  $ sudo make install

mod_perlのインストール

makeでエラーが出た(/usr/bin/ld: cannot find -lperl)ので、パッケージマネージャでlibperl-devを入れた。

  $ perl Makefile.PL USE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs
  EVERYTHING=1
  $ make
  $ sudo make install

さて、再びSledgeのインストールに戻る。Apache::Requestが無いって言われているから、インストールする。httpdとかapxsの場所とかを 聞かれるたで、/usr/local/apache/binの下の奴を教えてやった。

  $ sudo perl -MCPAN -e 'install Apache::Request'

で、だ。やっときた。が!

  $ perl Makefile.PL
  Writing Makefile for Sledge
  $ make
  $ make test
  ...
  Files=44, Tests=212,  3 wallclock secs ( 0.08 usr  0.03 sys +  2.26
  cusr  0.19 csys =  2.56 CPU)
  Result: FAIL
  Failed 8/44 test programs. 4/212 subtests failed.
  make: *** [test_dynamic] エラー 255

落ち着いて、テストのログにあるエラーを眺める。 DBI.pmが無い。Encode/compat.pmが無い。

  $ sudo perl -MCPAN -e 'install DBI'
  $ sudo perl -MCPAN -e 'install Encode'
  $ sudo perl -MCPAN -e 'install Encode::compat'

あとは、これだけかな? Can't locate object method "__triggers" via package "Test::Pages" at t/11_hooks.t line 9

これか!!

  wget http://search.cpan.org/CPAN/authors/id/M/MI/MIYAGAWA/Class-
  Trigger-0.10.tar.gz

  $ tar xzf Class-Trigger-0.10.tar.gz
  $ cd Class-Trigger-0.10
  $ perl Makefile.PL
  $ make
  $ make test
  $ sudo make install

すると、ついにきた。

  $ make test
  ...
  All tests successful.
  Files=44, Tests=222,  3 wallclock secs ( 0.08 usr  0.02 sys +  2.40
  cusr  0.20 csys =  2.70 CPU)
  Result: PASS
  $ sudo make install
  ...
  Writing /usr/local/lib/perl/5.8.8/auto/Sledge/.packlist
  Appending installation info to
  /usr/local/lib/perl/5.8.8/perllocal.pod

とりあえず、ここまでで勘弁して野郎。

動くかなぁ

Prev Entry

Next Entry