Thank you Andrew! That helps - a lot!! Chris Andrew Haley schrieb: > Chris Miller wrote: > >> Thank you, Andrew, >> >> actually, I figured that out after I sent this question to the ML. >> However, the next question, which seems to be the core of the problem >> arises: >> What I really want to make sure is that at runtime, local symbols (the >> ones not exported) will have precedence over exported (colliding) >> symbols of other libs. >> >> Is that the case? >> > > If and only if you use -Bsymbolic when linking, yes. However, > -Bsymbolic is not without problems: one of the guarantees of C is that > &symbol always returns the same result, no matter who is asking. All > manner of things can break if this isn't true. > > Also, if you use -Bsymbolic in a shared library you also should link > all executables with -fPIC. This is needed because -Bsymbolic breaks > copy relocations in an executable so that it ends up with a private > copy of all the statically-allocated data in shared libraries. All > hell then breaks loose, as you can imagine. :-) Compiling the > executable -fPIC ensures that there are no copy relocs created. > > Andrew. > >