This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
RTLD_DEEPBIND
- From: Mike Hearn <mike at plan99 dot net>
- To: libc-alpha at sources dot redhat dot com
- Date: Tue, 16 May 2006 13:47:34 +0100
- Subject: RTLD_DEEPBIND
I'm attempting to understand the exact behavior of RTLD_DEEPBIND. It
appears from the description in the man page that this is equivalent to
having the target library linked with -Bsymbolic, in that symbols will be
bound internally first. Is this correct?
I'm looking for a way to open a library such that the symbols of that
library and also the dependency tree below it are placed before global
scope, so that in this case:
program
- libfoo.so.1
- libxxx.so.1
- dlopen("libbar.so.1")
- libxxx.so.2
libbar.so.1 will be linked to symbols in libxxx.so.2, not libxxx.so.1
>From the name this is the behavior I'd expect (that is it "binds deeply in
the tree") but it seems that's not actually what is done. Is there a way
to get this effect?
thanks -mike