>> Steve Langasek <[EMAIL PROTECTED]> writes: > > A large majority of C++ packages depend on libstdc++*; the ones > > that doesn't are probably libraries which have been linked using > > cc instead of c++. For example libsigc++-1.1-5 and libgtkmm1.3-14 > > would pass unnoticed even if they are both C++ libraries. This > > *might be* symptomatic of libtool libraries, counterexamples > > appreciated. In this case you'd have to look for typical C++ > > symbols in the output of, say, objdump -T, e.g. __pure_virtual, > > __dynamic_cast. In general you'd have to look for traces of C++ > > mangling. > > It should be easy enough to find all the C++ libraries that need to be > recompiled. Sure. I was talking about the libraries that /don't/ have dependencies on libstdc++. libsigc++-1.1-5 and libgtkmm1.3-14 in my example both use libstdc++ but they don't have a dependency on it. The only reason why this has gone unnoticed is because you need to use a specific version of the c++ in order to be able to use these libraries. > Anything that's missed by this process is either a package that > requires manual intervention to get it working with gcc 3.x, or a > package that has no dependencies on any other C++ packages.
That's my point. You can't use the binaries for the libraries I mentioned with any other version of c++ than the one used to compile those binaries, yet there's no information in the library that suggest it is actually a C++ library. Look: $ readelf -d /usr/lib/libgtkmm-1.3.so.14 | grep NEEDED | tr -s ' ' 0x00000001 (NEEDED) Shared library: [libsigc-1.1.so.5] 0x00000001 (NEEDED) Shared library: [libgtk-x11-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libgdk-x11-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libatk-1.0.so.0] 0x00000001 (NEEDED) Shared library: [libgdk_pixbuf-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libm.so.6] 0x00000001 (NEEDED) Shared library: [libpangoxft-1.0.so.0] 0x00000001 (NEEDED) Shared library: [libpangox-1.0.so.0] 0x00000001 (NEEDED) Shared library: [libpango-1.0.so.0] 0x00000001 (NEEDED) Shared library: [libgobject-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libgmodule-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libdl.so.2] 0x00000001 (NEEDED) Shared library: [libglib-2.0.so.0] 0x00000001 (NEEDED) Shared library: [libc.so.6] -- Marcelo | They stared at them. Staring is one of the few things [EMAIL PROTECTED] | frogs are good at. Thinking isn't. | -- (Terry Pratchett, Wings)