Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: DynaLoader can't resolve multiple Linux shared objects

by Anonymous Monk
on Nov 14, 2018 at 13:49 UTC ( #1225786=note: print w/replies, xml ) Need Help??


in reply to DynaLoader can't resolve multiple Linux shared objects

Can you build libLicIntfcLib.so with $ORIGIN/auto/LicenseInterface in its rpath? $ORIGIN is a special prefix understood by GNU ld.so as "the directory where the executable resides". Or maybe you need to write just $ORIGIN without anything else because the current executable would be libLicIntfcLib.so and liblmgr11.so is already stored near it.

Replies are listed 'Best First'.
Re^2: DynaLoader can't resolve multiple Linux shared objects
by boleary (Sexton) on Nov 14, 2018 at 13:59 UTC

    I'm not sure how to do that, but will I look into it... That really sounds like what I need because this was just a simple test case and the module will not be located in such a convenient location

    So CLOSE! I added the:

    -Wl,-rpath,'$ORIGIN'

    to the g++ command like your helpful link told me... now it works when I run perl test.pl without LD_LIBRARY_PATH being set, and I can have the .so in ".' or './auto/LicenseInterface' or '../COMMON/auto/LicenseInterface'

    However, the perlApp exe file still does not work, but its the libperl.so that it can't find now, so it did resolve the libLicIntfcLib.so and liblmgr11.so files

    DynaLoader.pm loaded (../COMMON/LicenseInterface, /lib /usr/lib /usr/l +ocal/lib) DynaLoader::bootstrap for LicenseInterface (auto/LicenseInterface/Lice +nseInterface.so) Can't load 'auto/LicenseInterface/LicenseInterface.so' for module Lice +nseInterface: libperl.so: cannot open shared object file: No such fil +e or directory at /</home/boleary/git_repos/CE_TOOLS/testLib/BUILD_TE +MP/cadEnhance/tools/TESTLIB/testLib>DynaLoader.pm line 224. at /</home/boleary/git_repos/CE_TOOLS/testLib/BUILD_TEMP/cadEnhance/t +ools/TESTLIB/testLib>LicenseInterface.pm line 11.

      I did not need to link libperl !!!!

      now executable is working

      from hopeless to solved with one small hint! Thank you

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1225786]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (4)
As of 2018-12-16 13:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How many stories does it take before you've heard them all?







    Results (70 votes). Check out past polls.

    Notices?
    • (Sep 10, 2018 at 22:53 UTC) Welcome new users!