Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

there must be remains of another Perl installation - libraries specifically - in the system.

Compilation of module is successful which denotes that gcc is looking for libraries at the correct places and with the correct order - if there was any need re:-shared. What fails is running the module. Because it was compiled as "shared" which means it must look for and link with the Perl libraries during runtime. And this is where it fails, not because it can't find any libraries but because it (i.e. the operating system's linker responsible for finding shared components at runtime) finds the wrong versions (the handshake mismatch, btw it is cool of perl to make its own checks for its library versions).

I suggest you make a thorough search of old-version Perl libraries in your system. Also, run this: echo $LD_LIBRARY_PATH to tell you the linker's search path, although it can be empty meaning it follows a default which most likely is not aware of your local installation at /home/rg8239. In fact, it looks weird to me that you installed Perl in your home dir but its libraries are searched, by Perl's Makefiles, in a system dir. The guess is that older Perl is installed in system dir and you tried to install a newer version in your homedir. This will mess up Perl for you. Don't worry, this being Linux, unless you installed as root, your system Perl is safe. Which possibly means, another guess, that you did not upgrade the system Perl but you installed a newer version in your homedir. This is tricky when you do it without the help of something like perlbrew. This will enable root-free multiple/parallel Perl versions in a system. You should use it if you want to have Perl in your home dir. This is preferred than upgrading as root the system Perl. Leave the system Perl to the system and install a "user" Perl in your homedir via perlbrew

Edit: to make it clear: your problem is not with compiling. Compilation succeeded. Running (the tests) failed because system runtime linker links to a different Perl library. Perl detects that and complains (handshake failed).

bw, biako


In reply to Re: XS.c: loadable library and perl binaries are mismatched (got handshake key 0xc100000, needed 0xc180000) by bliako
in thread XS.c: loadable library and perl binaries are mismatched (got handshake key 0xc100000, needed 0xc180000) by rgren925

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2024-04-19 21:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found