http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47558

--- Comment #16 from Iain Sandoe <iains at gcc dot gnu.org> 2011-02-01 15:26:15 
UTC ---
(In reply to comment #15)


> Perhaps r163267 is fragile  to certain combination of linker flags (like
> -flat_namespace)?

"fragile" LOL... 

man ld:

   -flat_namespace
                 Alters how symbols are resolved at build time and runtime. 
With -two_levelnamespace (the default), the linker only searches
                 dylibs on the command line for symbols, and records in which
dylib they were found.  With -flat_namespace, the linker searches
                 all dylibs on the command line and all dylibs those original
dylibs depend on.  The linker does not record which dylib an
                 external symbol came from, so at runtime dyld again searches
all images and uses the first definition it finds.  In addition,
                 any undefines in loaded flat_namespace dylibs must be
resolvable at build time.

--  you are defeating the mechanism that is used to supply the _ext symbols
from a different library.
If use if this flag is, actually, necessary then we need to alter the whole
mechanism for the _ext to build a distinctly named lib.

Reply via email to