public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* binary compatibility between g++ 3.3.1 and 3.4.3 on Redhat Linux 64 bit (x86_64)
@ 2006-04-21 11:14 Rathi, Dinesh
  2006-04-21 11:38 ` Andrew Haley
  0 siblings, 1 reply; 2+ messages in thread
From: Rathi, Dinesh @ 2006-04-21 11:14 UTC (permalink / raw)
  To: gcc-help

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. 

Any information would be helpful!


#0  0x0000003a1a92e4dd in raise () from /lib64/tls/libc.so.6
(gdb) where
#0  0x0000003a1a92e4dd in raise () from /lib64/tls/libc.so.6
#1  0x0000003a1a92fc8e in abort () from /lib64/tls/libc.so.6
#2  0x0000003a1a962b41 in __libc_message () from /lib64/tls/libc.so.6
#3  0x0000003a1a96846f in _int_free () from /lib64/tls/libc.so.6
#4  0x0000003a1a968a06 in free () from /lib64/tls/libc.so.6
#5  0x0000003a1d6ade9e in operator delete () from
/usr/lib64/libstdc++.so.6
#6  0x0000003a1d6902b2 in std::string::_Rep::_M_destroy ()   from
/usr/lib64/libstdc++.so.6
....

Thanks
Dinesh

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: binary compatibility between g++ 3.3.1 and 3.4.3 on Redhat Linux 64 bit (x86_64)
  2006-04-21 11:14 binary compatibility between g++ 3.3.1 and 3.4.3 on Redhat Linux 64 bit (x86_64) Rathi, Dinesh
@ 2006-04-21 11:38 ` Andrew Haley
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Haley @ 2006-04-21 11:38 UTC (permalink / raw)
  To: Rathi, Dinesh; +Cc: gcc-help

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.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-04-21 11:38 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-04-21 11:14 binary compatibility between g++ 3.3.1 and 3.4.3 on Redhat Linux 64 bit (x86_64) Rathi, Dinesh
2006-04-21 11:38 ` Andrew Haley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).