It looks like the @INC list (the directory list perl uses for finding its modules) is not right or is not processed right. Only one directory is looked into? (You can see @INC with "perl -V", it should be up to about ten directories on a Gentoo install.)
Unless you really, really want to know exactly which bit from which package is sideways you might get out of the hole simply with: perl-cleaner --reallyall -- Arttu V. On 5/18/12, Harry Putnam <rea...@newsguy.com> wrote: > Alan McKinnon <alan.mckin...@gmail.com> writes: > > [...] > >>> | Checking prerequisites... >>> | build_requires: >>> | ! Parse::CPAN::Meta (1.40) is installed, but we need version >= >>> | 1.4401 >>> | ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install >>> the versions | of the modules indicated above before proceeding with >>> this installation | >>> | Could not create MYMETA files >>> | Creating new 'Build' script for 'Module-Build' version '0.40' >>> | Copied META.yml to MYMETA.yml for bootstrapping >>> | >>> | These additional prerequisites must be installed: >>> | requires: >>> | ! version (we need version 0.87) >>> | >>> Source configured. >>> | >>> Compiling source in >>> | /var/tmp/portage/perl-core/Module-Build-0.400.0/work/Module-Build-0.40 >>> ... >>> | version version 0.87 required--this is only version 0.82 at >>> | /usr/lib/perl5/vendor_perl/5.12.4/Module/Metadata >>> | .pm line 20. >>> | [...] >>> `---- >>> >>> I can't really see what to do about this... >>> >>> What is installed is: >>> >>> ,---- >>> | # eix -Ic|grep Parse.*Meta >>> | [I] perl-core/Parse-CPAN-Meta (1.440.400@05/03/12): Parse META.yml >>> and other | similar CPAN metadata files >>> | [I] virtual/perl-Parse-CPAN-Meta (1.440.400@04/25/12): Virtual for >>> Parse-CPAN-Meta `---- >> >> Perl and any package manager tend to make an ugly combination... >> >> Now, I've never seen this specific error before but it looks like perl >> thinks your installed Parse-CPAN-Meta is still the old version 1.40. It >> doesn't realize what portage did in the interim. >> >> Have a look in that ebuild and 1.440.400 and you'll see quite a >> difference. > > Quite a difference in what? Or compared to what? > >> Does unmerging and remerging Parse-CPAN-Meta fix anything? > > I tried emerge -vC the core Parse-CPAN-Meta and the Virtual > Parse-CPAN-Meta > > Then eix-sync, then emerge -vuD world > > When it gets to building `perl-core/Module-Build-0.400.0' > > The same failure happens: > > ,---- > | [...] > | Checking prerequisites... > | build_requires: > | ! Parse::CPAN::Meta (1.40) is installed, but we need version >= > 1.4401 > | > | ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the > versions > | of the modules indicated above before proceeding with this installation > | > | Could not create MYMETA files > | Creating new 'Build' script for 'Module-Build' version '0.40' > | Copied META.yml to MYMETA.yml for bootstrapping > | > | These additional prerequisites must be installed: > | requires: > | ! version (we need version 0.87) > | >>> Source configured. > | [...] > `---- > > emerge has installed two very different [...]//Parse/CPAN/Meta.pm > > ,---- > | ls -l /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm \ > | /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm > | > | [...]10522 Apr 25 20:49 /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm > | [...] 7582 May 11 20:13 > /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm > `---- > > And they say very different things: > > From /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm: > > [...] > # Class structure > require 5.004; > require Exporter; > $Parse::CPAN::Meta::VERSION = '1.40'; > @Parse::CPAN::Meta::ISA = qw{ Exporter }; > @Parse::CPAN::Meta::EXPORT_OK = qw{ Load LoadFile }; > [...] > > From /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm: > > # Class structure > require 5.004; > require Exporter; > $Parse::CPAN::Meta::VERSION = '1.4404'; > @Parse::CPAN::Meta::ISA = qw{ Exporter }; > @Parse::CPAN::Meta::EXPORT_OK = qw{ Load LoadFile }; > > One looks for 1.40, the other for 1.4404 > > I don't know what the code does but, is this possibly the problem? If > so its not at all clear what to do about it. > > qfile on /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm > Shows it comes from the main perl installation: > > qfile /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm > ,---- > | dev-lang/perl (/usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm) > `---- > So that is from the main perl installation. > > Just renaming /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm to > /usr/lib/perl5/5.12.4/Parse/CPAN/XMeta.pmX > > Causes a new miss match on version when building > perl-core/Module-Build-0.400.0 > ,---- > | *** BOOTSTRAPPING version *** > | Could not create MYMETA files > | Creating new 'Build' script for 'Module-Build' version '0.40' > | Copied META.yml to MYMETA.yml for bootstrapping > | > | These additional prerequisites must be installed: > | requires: > | ! version (we need version 0.87) > | >>> Source configured. > | >>> Compiling source in > /var/tmp/portage/perl-core/Module-Build-0.400.0/work/Module-Build-0.40 ... > | version version 0.87 required--this is only version 0.82 at > /usr/lib/perl5/vendor_perl/5.12.4/Module/Metadata.pm line 20. > `---- > > So it appears there is some deeper mangling somewhere. > > > >