in reply to Wow! Painful upgrade to Perl 5.12

You may think of Perl as a language or as a executable, but it's also a library. This allows C code and Perl code to be interfaced.

The source interface to the library is backwards compatible, which means an XS module that can be compiled using Perl 5.8 should have no problem being compiled with Perl 5.10.

The binary interface to the library is backwards compatible between minor versions, which means an XS module that was compiled using Perl 5.8.8 doesn't need to be recompiled if you upgrade to Perl 5.8.9.

The binary interface to the library is NOT backwards compatible between major versions, which means an XS module that was compiled using Perl 5.8.x DOES need to be recompiled if you upgrade to Perl 5.10.x.

That's why you need to reinstall your modules. If you don't, if you use a module compiled using Perl 5.8 with Perl 5.10, you get "Can't find Perl58.dll".

Replies are listed 'Best First'.
Re^2: Wow! Painful upgrade to Perl 5.12
by ack (Deacon) on May 24, 2010 at 15:29 UTC

    Thanks ikegami. I sort of intuited something like that...but never knew for sure.

    I wish I had a way to automate that re-install with all the CPAN modules I've got. I don't do the changes quite often enough to motivate me to build my own tool...but maybe I'll give it some thought. I'm sure I'll face this chalenge again.

    ack Albuquerque, NM