On Sep 2, 2009, at 6:21 AM, Michael Peters wrote:
cr...@animalhead.com wrote:
I have always included previous perl libraries in the @INC of
new builds. And it has always worked, with the single
exception of building mod_perl2 this time. All of the perl
scripts and modules on my site work well under the new 5.10.1.
Pure Perl modules should work between versions (they might have
some new warnings, but they should work), but anything with XS (C
code) isn't guaranteed to work across major versions. So when
you've upgraded between say 5.8.2 and 5.8.7 you wouldn't need to re-
install. But when upgrading from 5.8.X to 5.10.X you will need to
re-install.
If you aren't up to being rigorous, be lucky: everything (except
mod_perl build, see crossed email with "resolved" in title) works
for me so far. Hopefully most modules for which this would be an
issue are covered by upgrades, which get installed at the top
(5.10.1) level.
What does make problems is that CPAN sometimes deletes modules
in an earlier-version directory when installing a new module
in the current-version directory. This tends to break the
lower-level perl w/r/t module availability. So I copy the
earlier-version directories before an upgrade session, and
run a "sync" program thereafter.
Aside from the pain of re-downloading all kinds of modules
as they prove to be needed over the next year or so, I know
there are items in the 5.8.7 libraries from my Internet
Hosting Provider, that are needed to run software from the IHP.
If you need 5.8.7 libs that you can't re-compile against 5.10.1
then just stick with 5.8.7.
I had a case like that in the current transition: my IHP's CGI
control panel works under 5.8.9 but logs taint warnings under
5.10.1. So I just ran a script that changed all of its bang
lines to 5.8.9. Sometimes one has to admit that life is too
short to tilt with every problem.
I don't see a command to tell the mod_perl build process to
use a particular perl. If I say $perl_other Makefile.PL
in the modperl-2.x directory, does that do it?
Yes, the perl you use when you run the Makefile.PL is the one
that's used in the compilation of mod_perl.
Thank you for this valuable information! It should be in the
mod-perl documentation. (Bet it's not in there now, I looked
pretty hard.) Hope someone who can do that reads this suggestion.
--
Michael Peters
Plus Three, LP