RHEL 5.11 PERL 5.8.8 to RHEL 6.8 PERL 5.10.1

Latest response

I need to move applications residing on RHEL 5.11 to a RHEL 6.8 machine. The apps are currently PERL 5.8.8 and the RHEL 6.8 machine is running 5.10.1. I have tried creating /usr/share/perl5/site_perl/5.8.8, /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/, /usr/lib/perl5/5.8.8, /usr/lib64/perl5/vendor_perl/5.8.8/, etc and defined these for @INC. When I attempt to test the modules with a slimmed down version of the code, I get the dreaded "perl tstack sp ptr", indicating different versions (which I know). This is coming from the IO module. How do I get this 5.8.8 version to coexist with 5.10.1 and work? How can this 5.8.8 version run as 5.10.1? I do not have access to CPAN for this machine.

Responses

Hi,

If you need the code running under the both RHEL versions, write the code 5.8-compatible and it will work under 5.10 as well.

The @INC contains not only versioned paths, but also common ones.

This is my @INC from Fedora 24:

 @INC:
    /home/xzdse/perl5/lib/perl5/5.22.2/x86_64-linux-thread-multi
    /home/xzdse/perl5/lib/perl5/5.22.2
    /home/xzdse/perl5/lib/perl5/x86_64-linux-thread-multi
    /home/xzdse/perl5/lib/perl5
    /usr/local/lib64/perl5
    /usr/local/share/perl5
    /usr/lib64/perl5/vendor_perl
    /usr/share/perl5/vendor_perl
    /usr/lib64/perl5
    /usr/share/perl5

So put your modules under one of the latter ones and maintain the 5.8-compatibility and you will be fine. We did the same, the code was written under 5.8 and it is working under 5.10, 5.16 (RHEL7) and even 5.22 (F24).

//Zdenek

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.