in reply to Can't build modules that load Socket.so

What does ldd .....Socket.so output? Set LD_LIBRARY_PATH to include a path to the missing files.

Replies are listed 'Best First'.
Re^2: Can't build modules that load Socket.so
by MikeMokkas (Initiate) on Sep 21, 2010 at 07:25 UTC
    Hi thanks for the reply, ldd outputs:
    -bash-3.00$ ldd /usr/local/lib/perl5/5.12.0/sun4-solaris/auto/Socket/S +ocket.so libc.so.1 => /lib/libc.so.1 libm.so.2 => /lib/libm.so.2 /platform/SUNW,Sun-Fire-V445/lib/libc_psr.so.1
    I have also used ldd -r and I get the following: Main thing imo:
      libc.so... is supposed to define inet_pton, so I've no idea why thats broken ...

      also Socket.so is supposed to link to libperl.so, I also have no idea why thats broken.

      Are you sure you're not mixing the system perl with perl you compiled yourself?

      Shot in the dark, try

      "export LD_LIBRARY_PATH=/usr/local/lib"
      You might also be able to glean some hints from Not able to load module though @INC contains it

      A real sysadmin ought to be able to help you resolve this :)

        Truth is that the machine I am working on had Perl5.8.2 installed and I had to install a newer version because some applications required higher versions of core modules. The new version was installed from a package by the sysadmin together with some libs , he then symlinked the old /usr/bin/perl to /usr/local/bin/perl5.12.0 . Now, the applications depending on perl are running smoothly and I had no trouble with building 8-12 modules since then, with the exception of this one. I'll post my "perl -w" just in case you see something is wrong or missing.