Bug#35389: glibc2.1 segfaults for C++ stream code from glibc2.0 system
On 31-Mar-1999, Zack Weinberg <zack@rabi.columbia.edu> wrote:
| On Wed, 31 Mar 1999 23:14:37 -0500 (EST), Dirk Eddelbuettel wrote:
| >
| >Package: libc6
| >Version: 2.1.1-0pre1.2
| >
| >Two bugs were reported against Octave as the glibc2-compiled version
| >segfaults under glibc2.1. Compiling with debugging enabled, and running
| >under gdb revealed that the segfault is not caused by Octave itself, but
| >rather by an interaction between glibc2.1 and stdlibc++.
|
| I ran your test program on my potato system and got no segfault. Have
| you updated libstdc++ as well as libc? libstdc++ must be recompiled
| to work with glibc 2.1. My package versions are:
|
| libc6 2.1.1-0.1
| libstdc++2.9 2.91.61-1
| libstdc++2.9-dev <not installed>
| libstdc++2.9-glibc2.1 2.91.63-1.1
| libstdc++2.9-glibc2.1-dev 2.91.63-1.1
|
| If you didn't replace the old -dev package, you'll be linking new
| programs with the old libstdc++, which won't work.
|
| You appear to have a later version of libc6 than me; where did you
| find it? ftp.us.debian.org doesn't have it.
I'm not sure what version of libstdc++ is installed on the system that
has glibc2.1 (Dirk should be able to clarify this point). If the
system with glibc2.1 does have the correct version of libstdc++, then
the point is that upgrading to glibc2.1 and the newer libstdc++ can
break binary compatibility. The failure was for a program compiled
and linked on a system with the older libraries and then run on a
system with the newer libraries.
Are glibc2.1 and the newer libstdc++ supposed to be binary compatible
with older versions of the library? If not, and there is a good
reason for it, then so be it. I for one, however, am really tired of
seeing reports that binary releases of Octave don't work after library
upgrades.
jwe
Reply to: