Jeff Squyres wrote:
We use lt_dlopen() to open the plugins (Libtool's wrapper for a
portable dlopen). It opens all plugins (DSOs) in a private scope.
That private scope is kept deep in the OPAL MCA base and not exposed
elsewhere in the code base. So if you manually dlopen a plugin
again, I'll bet that the linker realizes that that DSO has already
been loaded into the process space and doesn't actually load it again
(but doesn't fail). So the dlsyms fail because you don't have access
to the private scope from where Libtool originally opened the DSO.
Make sense?
Yes, I'm nodding my head vigorously (with a vacuous stare on my face).
Mostly, I think you're very smart and I'm not! I get the general
principles, but am unfamiliar with the details.
Never mind: --enable-static is exactly the flavor of suggestion I was
looking for. Thanks. I'm back in the saddle. Onward.