Re: RecentAction doesn't derive from RecentChooser



On Mon, 2008-01-14 at 22:08 -0500, José Alburquerque wrote:
> José Alburquerque wrote:
> > It looks like the size of instances in previous releases of *mm projects 
> > is important.  Why so?  What does ABI mean?   It looks like the 
> > ValueBase classes patch I was thinking of submitting makes no sense with 
> > this new (to me) information.
> >
> >   
> I did a little searching on this and I have a general idea of what it 
> means.  I'll admit, I don't understand it all , but an explanation at 
> this point is not really necessary; I'll learn as I go.  Thanks.
> 
> -Jose

ABI means Application Binary Interface.  The (huge) benefit of keeping
the ABI stable is that you can switch out the shared gtkmm library to a
newer version and have the apps that link against the library work
exactly as they worked on the old version.  If the ABI of the library
had changed from one version to the next, any applications that used the
library would need to be recompiled, you couldn't just switch to a newer
version of the library.  
For example, if gtkmm changed its ABI and your linux distribution
updated to that new version of gtkmm, every single application that used
gtkmm would have to be updated as well.
That's the short answer for why maintaining ABI compatibility is a good
thing.
I don't know all of the guidelines for maintaining ABI compatibility,
but I know that you have to be very careful with virtual functions,
since they affect the size of an object (by changing the vtable), but
adding regular functions should be ok.
-- 
Jonner



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]