in reply to default perl on linux

I had the same issue on RHEL3. My answer was to put my personal Perl into /usr/local/bin (its default when you compile it yourself), and then I just put /usr/local/bin in my PATH first.

Yes, some scripts start with "#!/usr/bin/perl" - but that's ok, those are the ones that got installed with the system perl anyway. The ones that get installed via Makefile.PL or Build.PL which were themselves run with the new perl will actually start with "#!/usr/local/bin/perl" - the script convert function there will put the right header on them based on $^X. Now scripts that were installed as part of the OS would refer to /usr/bin/perl, while scripts that were installed via CPAN would refer to /usr/local/bin/perl. And scripts I run at the commandline would be automatically run via /usr/local/bin/perl (because it's first in the PATH). The only thing left is to remember to write my ~/bin scripts to refer to /usr/local/bin/perl as their first line.

Now I run Gentoo, and have never been more than two points behind the current perl (e.g., just after 5.8.8 was released, I think I was still at 5.8.6 - soon became 5.8.7, and now it's up to 5.8.8), so it's not really that big of a deal. And Gentoo allows you to choose threading or not during the emerge process (defaulting to not threading). Though I had to change that at one point to get mod_perl to install.