This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: binary compatibility between g++ 3.3.1 and 3.4.3 on Redhat Linux 64 bit (x86_64)


Rathi, Dinesh writes:
 > Hi
 >             I have my executable built using g++ 3.3.1 and I am trying
 > to use a third party library built using g++ 3.4.3 (I don't link to it,
 > use dlopen to load it). I am seeing a crash like 
 > 
 > *** glibc detected *** double free or corruption
 > (out):0x0000000000f1ed70 *** and the stack trace is also put below. 
 > 
 > I tried to search information on it and it seems that binary built with
 > g++ 3.3.1 and 3.4.3 might be binary incompatible with each other, though
 > I could not find confirmation for x86_64 arch (gcc release notes mention
 > it for sparc/ mips). Does anyone know for sure that this wont work? Also
 > g++ 3.3.1 links with libstdc++.so.5 while 3.4.3 with libstdc++.so.6, as
 > a result both these libraries get loaded in context of my executable, is
 > that fine or can it give some trouble.

The version number bump from .5 to .6 is a clue: it generally means a
binary incompatible change.  You really don't want two versions of
libstdc++ loaded at the same time.

We try not to break things on releases, so going from 3.4.2 to 3.4.3
(for example) should be OK.

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]