Re: [reSIProcate] Different versions of libresiprocate.a in the same executable
- From: Alan Hawrylyshen <alan@xxxxxxxxxx>
- Date: Mon, 27 Jun 2005 13:13:14 -0600
On Jun 21, 2005, at 14.14, Sandeep Sharma wrote:
Hi,
I have a binary that loads up two shared libraries (.so). The
first .so
has been statically linked with an older version of libresiprocate.a
(more than a year old). The second .so has been statically linked
with a
recent version of libresiprocate.a (about 2 months old). (Both of them
instantiate SipStack, but use different port numbers)
When I start up the binary, I get a core dump, backtrace is given
here.
If I load just one .so at a time, then things are ok.
My question is: Why could this be happening? How do I debug and fix
it?
Has anyone tried this sort of setup?
Thanks for your help in advance,
Sandeep
Sandeep;
I think a good question for you might be:
What are you trying to accomplish, and
What are your requirements?
The scenario that you describe is NOT a safe use of a library that
has static / singleton design patterns.
C++ does not provide support for this sort of things, so the API of
the library you want to use in this fashion needs to help you
accomplish it. In particular, the ABI needs to be stable or self-
correction. reSIProcate is neither over the period you describe.
Perhaps if you tell us your goals, we can propose an alternate
strategy or a viable enhancement for the stack, if one exists.
Cheers,
Alan Hawrylyshen
a l a n a t j a s o m i d o t c o m