I am developing a program using g++ 3.2. When I added a dynamic_cast, it started segfaulting on it. In searching the web I came up with the following:
http://lists.debian.org/debian-gcc/2002/debian-gcc-200205/msg00240.html It suggests that I mght be linking against two different versions of libstdc++ and, indeed, it seems I am (according to ldd). I proceeded to apt-get source --compile libglut3 and install it. That fixed the problem, but ldd gives the same output as before. I don't understand why my program seems to be linked to two versions of libstdc++. It looks like libstdc++.so.5 is the g++ 3.2 library, but there is also that libstdc++-libc6.2-2.so.3 which nothing seems to use. Can anyone explain this extraneous dependency? The output from ldd -v is below. --Greg libqt-mt.so.3 => /usr/lib/libqt-mt.so.3 (0x4001e000) libxerces-c.so.21 => /usr/lib/libxerces-c.so.21 (0x405af000) libglut.so.3 => /usr/lib/libglut.so.3 (0x40835000) libGLU.so.1 => /usr/X11R6/lib/libGLU.so.1 (0x40868000) libGL.so.1 => /usr/X11R6/lib/libGL.so.1 (0x408e4000) libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4094a000) libm.so.6 => /lib/libm.so.6 (0x409f4000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40a16000) libc.so.6 => /lib/libc.so.6 (0x40a1e000) libmng.so.1 => /usr/lib/libmng.so.1 (0x40b31000) libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x40b73000) libpng.so.3 => /usr/lib/libpng.so.3 (0x40b91000) libz.so.1 => /usr/lib/libz.so.1 (0x40bbd000) libpthread.so.0 => /lib/libpthread.so.0 (0x40bcc000) libXmu.so.6 => /usr/X11R6/lib/libXmu.so.6 (0x40c1c000) libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40c30000) libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x40c46000) libdl.so.2 => /lib/libdl.so.2 (0x40c4e000) libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40c51000) libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40c5f000) libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x40d19000) libXft.so.1 => /usr/X11R6/lib/libXft.so.1 (0x40d1e000) libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40d47000) libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x40d8e000) libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x40d96000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) liblcms.so.1 => /usr/lib/liblcms.so.1 (0x40de0000) libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x40dfb000) Version information: linux/D/qtgui: libgcc_s.so.1 (GCC_3.0) => /lib/libgcc_s.so.1 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 libstdc++.so.5 (CXXABI_1.2) => /usr/lib/libstdc++.so.5 libstdc++.so.5 (GLIBCPP_3.2) => /usr/lib/libstdc++.so.5 /usr/lib/libqt-mt.so.3: libdl.so.2 (GLIBC_2.1) => /lib/libdl.so.2 libdl.so.2 (GLIBC_2.0) => /lib/libdl.so.2 libstdc++.so.5 (GLIBCPP_3.2) => /usr/lib/libstdc++.so.5 libstdc++.so.5 (CXXABI_1.2) => /usr/lib/libstdc++.so.5 libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 libpthread.so.0 (GLIBC_2.2) => /lib/libpthread.so.0 libpthread.so.0 (GLIBC_2.0) => /lib/libpthread.so.0 libpthread.so.0 (GLIBC_2.1) => /lib/libpthread.so.0 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libxerces-c.so.21: libgcc_s.so.1 (GCC_3.0) => /lib/libgcc_s.so.1 libpthread.so.0 (GLIBC_2.0) => /lib/libpthread.so.0 libpthread.so.0 (GLIBC_2.1) => /lib/libpthread.so.0 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libstdc++.so.5 (GLIBCPP_3.2) => /usr/lib/libstdc++.so.5 libstdc++.so.5 (CXXABI_1.2) => /usr/lib/libstdc++.so.5 /usr/lib/libglut.so.3: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 /usr/X11R6/lib/libGLU.so.1: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 /usr/X11R6/lib/libGL.so.1: libdl.so.2 (GLIBC_2.1) => /lib/libdl.so.2 libdl.so.2 (GLIBC_2.0) => /lib/libdl.so.2 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libpthread.so.0 (GLIBC_2.0) => /lib/libpthread.so.0 /usr/lib/libstdc++.so.5: libgcc_s.so.1 (GCC_3.0) => /lib/libgcc_s.so.1 libc.so.6 (GLIBC_2.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 /lib/libm.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /lib/libgcc_s.so.1: libc.so.6 (GLIBC_2.2.4) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /lib/libc.so.6: ld-linux.so.2 (GLIBC_2.1) => /lib/ld-linux.so.2 ld-linux.so.2 (GLIBC_2.0) => /lib/ld-linux.so.2 ld-linux.so.2 (GLIBC_PRIVATE) => /lib/ld-linux.so.2 /usr/lib/libmng.so.1: libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libjpeg.so.62: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libpng.so.3: libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libz.so.1: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /lib/libpthread.so.0: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libc.so.6 (GLIBC_PRIVATE) => /lib/libc.so.6 /usr/X11R6/lib/libXmu.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libICE.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libSM.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /lib/libdl.so.2: libc.so.6 (GLIBC_2.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_PRIVATE) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libXext.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libX11.so.6: libdl.so.2 (GLIBC_2.1) => /lib/libdl.so.2 libdl.so.2 (GLIBC_2.0) => /lib/libdl.so.2 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libXrender.so.1: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libXft.so.1: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libfreetype.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/X11R6/lib/libXi.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/libstdc++-libc6.2-2.so.3: libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 /usr/lib/liblcms.so.1: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6 libm.so.6 (GLIBC_2.0) => /lib/libm.so.6 /usr/X11R6/lib/libXt.so.6: libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1.2) => /lib/libc.so.6 libc.so.6 (GLIBC_2.1) => /lib/libc.so.6 libc.so.6 (GLIBC_2.0) => /lib/libc.so.6

