[Catalyst] Requiring a certain module version in Makefile.PL

Octavian Rasnita orasnita at gmail.com
Sun Feb 21 21:47:07 GMT 2010

From: "J. Shirley" <jshirley at gmail.com>
> On Sun, Feb 21, 2010 at 9:54 AM, Octavian Rasnita <orasnita at gmail.com> 
> wrote:
>> Hi,
>> In Makefile.PL I have the following line:
>> requires 'DBIx::Class::Schema::Loader' => '0.05003';
>> When I do
>> perl Makefile.PL
>> shouldn't that line require and install this version of
>> DBIx::Class::Schema::Loder?
>> I have a 0.04... version, but after `perl Makefile.PL` the new version 
>> was
>> not installed and it happened the same with other modules.
>> I use Perl 5.10.0 under Debian.
>> Thanks.
> What's the output of 'perl Makefile.PL'?  It certainly should, and
> I've never seen it not correctly listing deps.
> -J

After I do
perl Makefile.PL it ends without asking me if I want to install some 
required modules, exactly as when it is all right.

But I've just discovered:

root at ebroker:~# perl -MDBIx::Class::Schema::Loader -e 'print 
root at ebroker:~# su www-data
www-data at ebroker:~$ perl -MDBIx::Class::Schema::Loader -e 'print 
www-data at ebroker:~$

So the user www-data sees a newer version of this module because it has the 
following PERL5LIB:
while the user root has no PERL5LIB environment variable defined.

I have installed most of the modules using local::lib, but I couldn't 
install some of them because they give an error telling that they can't 
create the directory
where it tries to install the modules, (t1 was an old user that doesn't 
exist anymore). This error is given by the module ExtUtils::Install but even 
though I searched in many places I couldn't find where it gets that "t1" 


More information about the Catalyst mailing list