Ok, here is the problem.
If you "perl -MCPAN -e shell;", and "test Inline::WebChat", but don't
have its prerequisite WWW::Chat::Processor, then CPAN will helpfully
download and build that as well.
It passes the location of the built prerequisite module in PERL5LIB.
Eg, with entries like /foo/.cpan/build/webchat-0.64/blib/arch .
But in Inline.pm, sub create_config_file wipes out PERL5LIB.
local $ENV{PERL5LIB} if defined $ENV{PERL5LIB};
So when Inline/WebChat.pm starts loading, and requires
WWW::Chat::Processor, it fails to find it.
If one comments out the local()ization,
#local $ENV{PERL5LIB} if defined $ENV{PERL5LIB};
then both Inline::TT and Inline::WebChat no longer have this install
problem.
At this point in the release cycle, I strongly suggest _not_ fixing this,
given that we're well into "no non-critical changes" phase on 0.44.
Document it as a known bug, and we'll get it later. Users can install
the underlying non-Inline module first, or use "force".
The new noisy 'require' failure was definitely helpful.
For the future, this PERL5LIB and PERL5OPT clipping seems like it
might cause problems at sites which use them. And PERLLIB is
curiously not clipped. Anyway, something for 0.45.
Cheers,
Mitchell
Date: Mon, 28 Oct 2002 00:23:10 -0800
From: Brian Ingerson <[EMAIL PROTECTED]>
To: Mitchell N Charity <[EMAIL PROTECTED]>
Cc: [EMAIL PROTECTED]
Subject: Re: TRIAL8 problem - Inline::TT install failure
Message-ID: <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
In-Reply-To: <[EMAIL PROTECTED]>;
from [EMAIL PROTECTED] on Sat, Oct 26, 2002 at 04:10:22PM -0400
On 26/10/02 16:10 -0400, Mitchell N Charity wrote:
> I scrubbed Inline from my machine, and installed just TRIAL8.
>
> Inline::TT installation failed.
> Running "test Inline::TT" in the CPAN shell dies with
>
> t/01_add........Error. You have specified 'TT' as an Inline
> programming language.
This is most likely caused because the 'require Inline::TT' was failing
silently. And that was probably happening because you didn't install the
prerequisite modules for Inline::TT. (Did the 'perl Makefile.PL' give
you any warnings??)
I have made the 'require' failures noisy. Which will help people in this
regard in the future. The fix is already in RELEASE CANDIDATE 2.
Cheers, Brian