xenchu has asked for the wisdom of the Perl Monks concerning the following question:

I think I already know the answer to my question but since I am definitely not an expert I thought I would ask here.

In a small test program I entered the following:

use re 'debug';

Before entering this code the program ran correctly.

When I syntax-checked the program these messages came back:

Can't load '/usr/perl5/5.6.1/lib/sun4-solaris-64int/auto/re/re.so' for + module re: ld.so.1: perl: fatal: relocation error: file /usr/perl5/5 +.6.1/lib/sun4-solaris-64int/auto/re/re.so: symbol my_regcomp: referen +ced symbol not found at /usr/perl5/5.6.1/lib/sun4-solaris-64int/XSLoa +der.pm line 75. BEGIN failed--compilation aborted at regtest.pl line 10.

Reading the message I have guessed that this version of Perl was badly installed. But it is only a guess and I am hoping that someone can tell me if I am right or wrong.

I have already sent this to the sysadmin responsibile. I am hoping he can make it all better.

xenchu


That's about all there is to it, except for everything else. -<b>Programming Perl</b> (p.346)

Replies are listed 'Best First'.
Re: use re problem
by kvale (Monsignor) on Apr 08, 2004 at 19:40 UTC
    That is the correct usage of re. my_regcomp is a regex compiler stub in a C library attahched to the 're' XS module. The error is saying that linking in my_regcomp is not possible, because the symbol could not be found in re.so. Sounds like re.so is hosed.

    -Mark