Gentoo Archives: gentoo-user

From: Harry Putnam <reader@×××××××.com>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Re: perl versioning problem, how to get beyond for @world
Date: Fri, 18 May 2012 01:05:38
Message-Id: 874nre712v.fsf@newsguy.com
In Reply to: Re: [gentoo-user] perl versioning problem, how to get beyond for @world by Alan McKinnon
1 Alan McKinnon <alan.mckinnon@×××××.com> writes:
2
3 [...]
4
5 >> | Checking prerequisites...
6 >> | build_requires:
7 >> | ! Parse::CPAN::Meta (1.40) is installed, but we need version >=
8 >> | 1.4401
9 >> | ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install
10 >> the versions | of the modules indicated above before proceeding with
11 >> this installation |
12 >> | Could not create MYMETA files
13 >> | Creating new 'Build' script for 'Module-Build' version '0.40'
14 >> | Copied META.yml to MYMETA.yml for bootstrapping
15 >> |
16 >> | These additional prerequisites must be installed:
17 >> | requires:
18 >> | ! version (we need version 0.87)
19 >> | >>> Source configured.
20 >> | >>> Compiling source in
21 >> | /var/tmp/portage/perl-core/Module-Build-0.400.0/work/Module-Build-0.40 ...
22 >> | version version 0.87 required--this is only version 0.82 at
23 >> | /usr/lib/perl5/vendor_perl/5.12.4/Module/Metadata
24 >> | .pm line 20.
25 >> | [...]
26 >> `----
27 >>
28 >> I can't really see what to do about this...
29 >>
30 >> What is installed is:
31 >>
32 >> ,----
33 >> | # eix -Ic|grep Parse.*Meta
34 >> | [I] perl-core/Parse-CPAN-Meta (1.440.400@05/03/12): Parse META.yml
35 >> and other | similar CPAN metadata files
36 >> | [I] virtual/perl-Parse-CPAN-Meta (1.440.400@04/25/12): Virtual for
37 >> Parse-CPAN-Meta `----
38 >
39 > Perl and any package manager tend to make an ugly combination...
40 >
41 > Now, I've never seen this specific error before but it looks like perl
42 > thinks your installed Parse-CPAN-Meta is still the old version 1.40. It
43 > doesn't realize what portage did in the interim.
44 >
45 > Have a look in that ebuild and 1.440.400 and you'll see quite a
46 > difference.
47
48 Quite a difference in what? Or compared to what?
49
50 > Does unmerging and remerging Parse-CPAN-Meta fix anything?
51
52 I tried emerge -vC the core Parse-CPAN-Meta and the Virtual
53 Parse-CPAN-Meta
54
55 Then eix-sync, then emerge -vuD world
56
57 When it gets to building `perl-core/Module-Build-0.400.0'
58
59 The same failure happens:
60
61 ,----
62 | [...]
63 | Checking prerequisites...
64 | build_requires:
65 | ! Parse::CPAN::Meta (1.40) is installed, but we need version >= 1.4401
66 |
67 | ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the versions
68 | of the modules indicated above before proceeding with this installation
69 |
70 | Could not create MYMETA files
71 | Creating new 'Build' script for 'Module-Build' version '0.40'
72 | Copied META.yml to MYMETA.yml for bootstrapping
73 |
74 | These additional prerequisites must be installed:
75 | requires:
76 | ! version (we need version 0.87)
77 | >>> Source configured.
78 | [...]
79 `----
80
81 emerge has installed two very different [...]//Parse/CPAN/Meta.pm
82
83 ,----
84 | ls -l /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm \
85 | /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm
86 |
87 | [...]10522 Apr 25 20:49 /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm
88 | [...] 7582 May 11 20:13 /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm
89 `----
90
91 And they say very different things:
92
93 From /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm:
94
95 [...]
96 # Class structure
97 require 5.004;
98 require Exporter;
99 $Parse::CPAN::Meta::VERSION = '1.40';
100 @Parse::CPAN::Meta::ISA = qw{ Exporter };
101 @Parse::CPAN::Meta::EXPORT_OK = qw{ Load LoadFile };
102 [...]
103
104 From /usr/lib/perl5/vendor_perl/5.12.4/Parse/CPAN/Meta.pm:
105
106 # Class structure
107 require 5.004;
108 require Exporter;
109 $Parse::CPAN::Meta::VERSION = '1.4404';
110 @Parse::CPAN::Meta::ISA = qw{ Exporter };
111 @Parse::CPAN::Meta::EXPORT_OK = qw{ Load LoadFile };
112
113 One looks for 1.40, the other for 1.4404
114
115 I don't know what the code does but, is this possibly the problem? If
116 so its not at all clear what to do about it.
117
118 qfile on /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm
119 Shows it comes from the main perl installation:
120
121 qfile /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm
122 ,----
123 | dev-lang/perl (/usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm)
124 `----
125 So that is from the main perl installation.
126
127 Just renaming /usr/lib/perl5/5.12.4/Parse/CPAN/Meta.pm to
128 /usr/lib/perl5/5.12.4/Parse/CPAN/XMeta.pmX
129
130 Causes a new miss match on version when building
131 perl-core/Module-Build-0.400.0
132 ,----
133 | *** BOOTSTRAPPING version ***
134 | Could not create MYMETA files
135 | Creating new 'Build' script for 'Module-Build' version '0.40'
136 | Copied META.yml to MYMETA.yml for bootstrapping
137 |
138 | These additional prerequisites must be installed:
139 | requires:
140 | ! version (we need version 0.87)
141 | >>> Source configured.
142 | >>> Compiling source in /var/tmp/portage/perl-core/Module-Build-0.400.0/work/Module-Build-0.40 ...
143 | 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.
144 `----
145
146 So it appears there is some deeper mangling somewhere.

Replies

Subject Author
Re: [gentoo-user] Re: perl versioning problem, how to get beyond for @world "Arttu V." <arttuv69@×××××.com>