[reSIProcate] Different versions of libresiprocate.a in the same executable

Alan Hawrylyshen alan at jasomi.com
Mon Jun 27 14:13:14 CDT 2005


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




More information about the resiprocate-devel mailing list