猿丸です。

On Sun, Jul 09, 2006 at 00:19:29PM JST, "Hong Chen" wrote:
> 現象は、Perl パッケージに含まれているモジュール以外は読み込まれないです。た
> とえば、SpamAssassinの場合、Digest::SHA1はportsでmake install して、locateも
> 確認されたにもかかわらず
> 
> # locate Digest/SHA1
> /usr/local/lib/perl5/site_perl/5.8.8/mach/Digest/SHA1.pm
> 
> SpamAssassin はエラーになります。
> ----
> Can't locate loadable object for module Digest::SHA1 in @INC (@INC contains:
> /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/5.8.8/BSDPAN
> /usr/local/lib/perl5/site_perl/5.8.8/mach /usr/local/lib/perl5/site_perl
> /usr/local/lib/perl5/5.8.8/mach /usr/local/lib/perl5/5.8.8) at
> /usr/local/lib/perl5/site_perl/5.8.8/Mail/SpamAssassin/EvalTests.pm line 33
> Compilation failed in require at

  とりあえず PERL_DL_DEBUG 環境変数を設定して実行してみるとどう
なるでしょうか?  env PERL_DL_DEBUG=1 perl -e 'use Digest::SHA1;'
って感じで。

  メッセージからすると、Digest/Sha1.pm 自体は見つかっていますが
(見つからなければ、Can't locate Digest/SHA1.pm in @INC ... とな
る)、/usr/local/lib/perl5/site_perl/5.8.8/mach/auto/Digest/SHA1/SHA1.so
が見つからないか、何らかの理由で load できてないようです。

 あとは、ktrace -t n perl -e 'use Digest::SHA1;'; kdump すると
また何かわかるかもしれません。

  Perl は one liner しか使ってないので外していたらすいません。

--
sarumaru

メールによる返信