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 (Beadle) 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 taking refuge in the Monastery: (3)
As of 2019-08-17 21:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If you were the first to set foot on the Moon, what would be your epigram?






    Results (134 votes). Check out past polls.

    Notices?