Updating perl modules inside the base perl package

Ian Burrell ianburrell at gmail.com
Fri Sep 8 18:48:57 UTC 2006

On 9/8/06, Nigel Metheringham <Nigel.Metheringham at dev.intechnology.co.uk> wrote:
> Ian Burrell wrote:
> > Do the modules have a separate life in CPAN?  There are a few like CGI
> > and CPAN that are included in the perl but also distributed
> > separately.  The perl RPM has obsoletes tp get rid of the old separate
> > packages.  One solution is to modify the perl spec to remove the
> > obsolete (or make them versioned).  There was a recent bug about doing
> > this for Fedora. Then you would build and install separate packages
> > for the newer version.
> An example of modules that I have problems with in RHEL/Centos (not
> Fedora as that has a much more recent version of perl) are:-
>     * Test::Simple
>     * Scalar::Util
> The last is particularly relevant as the one that ships with RHEL4 perl
> does not handle weaken, so some stuff just cannot work without it.
> Updating all of perl and keeping your own perl rpm maintained is a
> complete pain.  And if you do drastically upgrade perl (ie use the
> Fedora 5 rpm rebuilt for RHEL) then you will probably have to rebuild a
> pile of the other rpms to match too.
> Being able to deal with individual packages would be far far better.  Or
> being able to override stock modules with later versions without needing
> deep INC mangling magic would be good too.

Those both have separate distributions on CPAN in addition to being
included in perl.  Separate packages could be built from the newer
releases.  Unfortunately, there is a problem in getting them used.  On
RHEL 4 is that the include directories go (taking out multiple
versions and binary directories):


If you install the separate packages in vendor_perl (this requires
special options while building), they won't be used.  If you install
them in /usr/lib/perl5/5.8.5 (the default), the files will conflict
with the perl RPM.  The FC5 perl fixes the problem by changing the
order so that the vendor_perl directory comes first.


My impression is that the RHEL 4 perl 5.8.5 is binary compatible with
the FC5 5.8.8.  This is controlled by the "perl(:MODULE_COMPAT_5.8.3)"
requirements.  And by the default INC including the
5.8.3/i386-linux-thread-multi and later direcrtories.

 - Ian

More information about the Fedora-perl-devel-list mailing list