Hello, I would really appreciate any advice on this issue:
My Perl Module Environment:
/usr/lpp/perl/lib/5.8.7 => has the Perl modules that come with the base Perl installation. Comes first in @INC concatination.
/usr/lpp/perl/lib/site_perl/5.8.7 => has all my installed Perl modules that I downloaded from CPAN. Comes last in @INC concatination.
Installation Method: ExtUtils::MakeMaker
Restrictions: I cannot touch/modify the original Perl installation. This means that I cannot delete any of the pre-installed Perl modules from the
/usr/lpp/perl/lib/5.8.7 directory.
My Problem: This is a generic problem, with this specific example:
- Test::More 0.54 is installed in /usr/lpp/perl/lib/5.8.7
- Test::More 0.62 is installed in /usr/lpp/perl/lib/site_perl/5.8.7
- I want to install Email:Abstract 3.001. When I issue the Makefile.PL command, I get this warning:
"Warning: prerequisite Test::More 0.62 not found. We have 0.54."- Test::More 0.54 is found first because its library is concativated first in @INC. MakeMaker does not find Test::More 0.62, because the older version was already found.
Question: Can MakeMaker manage several versions of Perl modules during the install?
This is what I found in MakeMaker documentation (
ExtUtils::MakeMaker - Create a module Makefile - search.cpan.org):
"Sometimes older versions of the module you're installing live in other directories in @INC. Because Perl loads the first version of a module it finds, not the newest, you might accidentally get one of these older versions even after installing a brand new version. To delete all other versions of the module you're installing (not simply older ones) set the UNINST variable."
Given my restriction of not deleting anything from
/usr/lpp/perl/lib/5.8.7, is there a way to indicate to MakeMaker to search through all @INC directories to find the required versions of a Perl Module?
Any suggestions for a workaround?
Thanks a lot!
Genya