<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2015-02-16 23:20 GMT+01:00 Joerg Sonnenberger <span dir="ltr"><<a href="mailto:joerg@britannica.bec.de" target="_blank">joerg@britannica.bec.de</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On Mon, Feb 16, 2015 at 10:38:52PM +0100, Daniel Albuschat wrote:<br>
> tl;dr:<br>
> Is it a known behaviour that using llvm-3.4 and llvm-3.6 at the same time<br>
> in the same process (while llvm-3.6 is used from a linked shared library<br>
> and llvm-3.4 is dlopen'ed - with a strange detail: Especially if -rdynamic<br>
> is used when linking the program).<br>
<br>
</span>Are you using builds with or without exceptions? There is a known<br>
"feature" in libstdc++ that exceptions are unified by class name, not by<br>
object. That breaks dlopen even if all users have RTLD_LOCAL.<br></blockquote><div><br></div><div>llvm-3.4 is from the official Ubuntu 14.04 repo. llvm-3.6 is from <a href="http://llvm.org/apt">http://llvm.org/apt</a>.</div><div>How do I know / find out, whether they are compiled with or without exceptions?</div><div><br></div><div>My guess is that they are compiled without exceptions, since it is the default.</div><div>My app however, does use exceptions. Is this even possible?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The second question would be whether any of the DSOs involved for<br>
LLVM/Clang have different sonames for the different versions.<br></blockquote><div><br></div><div>Clang is not involved here. I am compiling with g++ and does only use llvm, not Clang.</div><div>llvm does use some common libraries like pthreads, dl and ncurses. Are those related, or do you mean libraries actually involved in code generation?</div><div><br></div><div>Thanks!</div><div>Daniel Albuschat</div><div><br></div></div></div></div>