From: "Arttu V." <arttuv69@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Re: perl versioning problem, how to get beyond for @world
Date: Mon, 21 May 2012 21:42:03 +0300 [thread overview]
Message-ID: <CA+2pebtjuBJ+B+60s9-oUtCs+kNjUYFSnBA+NWx4bYRMjopMhg@mail.gmail.com> (raw)
In-Reply-To: <874nre712v.fsf@newsguy.com>
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 <reader@newsguy.com> wrote:
> Alan McKinnon <alan.mckinnon@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.
>
>
>
>
next prev parent reply other threads:[~2012-05-21 18:43 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-14 22:58 [gentoo-user] perl versioning problem, how to get beyond for @world Harry Putnam
2012-05-14 23:21 ` Alan McKinnon
2012-05-18 1:03 ` [gentoo-user] " Harry Putnam
2012-05-21 18:42 ` Arttu V. [this message]
2012-05-25 18:06 ` Harry Putnam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CA+2pebtjuBJ+B+60s9-oUtCs+kNjUYFSnBA+NWx4bYRMjopMhg@mail.gmail.com \
--to=arttuv69@gmail.com \
--cc=gentoo-user@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox