[Chicago-talk] Re: Stealth Perl Install and then the old swap-a-roo?

Ed Summers ehs at pobox.com
Fri Nov 14 11:10:55 CST 2003


> Want:
> replace perl 5.6.1 on my redhat 7.2 box with 5.8.2
> 
> Proposed steps
> 1)  build 5.8.2 in a local director (/home/jason/perl5.8.2
> 2)  test it
> 3)  use that perl to install all of the modules I need
> 4)  remove all RPMs that rely on perl
> 5)  move this perl into place on top of the other perl

I'm not sure you can do 3 without having performed 'make install'. It's 
worth a try though. I believe that 5.8.2 by default goes into /usr/local, and
that rh7.2 comes with Perl in /usr/bin. So you might be able to get away with 
building, installing Perl, and grabbing the CPAN modules you need...and then 
removing the old /usr/bin/perl and symlinking /usr/bin/perl to 
/usr/local/bin/perl.

Alternatively (if Perl is already in /usr/local/bin/perl) you could install 
Perl into a custom directory, /usr/local/perl5.8.2 perhaps, and then create 
symlinks for the executables that come with Perl.

Note: a handy trick for getting all the CPAN modules you need. Using the old
Perl do this:

    perl -MCPAN -e 'autobundle'

This will create a listing of all your CPAN modules + their version numbers
in ~/.cpan/Bundle/Snapshot_2003_11_14_00.pm. Or with anotother suitable date.

When you've got your new Perl build you can then:

    perl -MCPAN -e 'install Bundle::Snapshot_2003_11_14_00'

This will go out to CPAN and download all you need, kind of like aptget on
acid :) I have no idea how to make your RPM database happy afterwards though.

//Ed 



More information about the Chicago-talk mailing list