I'm using g++ to create a shared library that I then explicitly
load into my process, using the "dlXXX" family of functions.
Everything works well except that global constructors & destructors
in the loaded code are not being invoked. I can search for them
manually (it's not so hard to tell which they are), but I presume that
the compiler should be placing them in the right sections of the module
so that they are run automatically.
Does anyone have experience with this? Is there a special step to
take that I'm missing, or perhaps a known Solaris bug related to
shared library loading through the dl API? Thanks for any help!
U.C. Berkeley Ensemble Project