Short answer because we're all still in Chicago...
Terry tells me that you're just hacking around trying to see what
works, etc. So adding direct calls to the BTL in this kind of
scenario is ok. I'm sure you're aware that this is not good for real
To directly call a BTL function, you might just want to configure OMPI
with --enable-static; this will suck in all the plugins into libmpi,
and therefore all symbols are directly available at link time.
There's other, more elegant ways for this hackaround, but if you're
just playing/testing, this is probably good enough.
On Oct 22, 2008, at 1:04 PM, Eugene Loh wrote:
> I'm trying to prototype an idea inside OMPI and am running into a
> I want to add a new function to a BTL and to have the PML call this
> function. I can't just put such a function call into the PML (not
> even for my prototype) since the PML is loaded before the BTL and so
> the PML will complain about a missing symbol.
> So, the PML will just have to refer to the function symbolically and
> I need to figure out the BTL function address "at the appropriate
> time" (after the BTL is loaded but before I need to call my function).
> I tried to dlopen the BTL (seemed successful... I got back a non-
> NULL handle), but dlsym can't seem to find any of the symbols in the
> BTL (not even ones that existed before I started any of my work).
> I can describe other things I tried or other things I think are
> supposed to work (but that I am reluctant to try), but let's cut to
> the chase: HELP!
> Please note that I'm a newbie OMPI developer and so I'm really
> interested in doing the simplest thing possible to try my
> prototype. I recognize that certain things will have to be done to
> add "real code" back to the code base, but at this point I'd prefer
> to defer difficult work and just test the ideas of my prototype.
> devel mailing list