On Sat, Aug 17, 2002 at 05:59:42PM +0200, Marcelo E. Magallon wrote: > >> Steve Langasek <vorlon@netexpress.net> 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. Are these libraries used by programs in our archive? Then most of those programs that depend on libsigc++ and libgtkmm will also depend on libstdc++; so when you go to recompile the programs with gcc 3.2, you'll find that the build fails because ld can't resolve (differently-mangled) symbol names in the libsigc++ and libgtkmm libraries. If there are no programs that use these libraries, or there are no programs that link against both these libraries and libstdc++, then these libraries do not have to be transitioned at the same time as the rest of the C++-using apps. The transition still has to be handled, it just isn't critical that it happen all at once. Steve Langasek postmodern programmer
Attachment:
pgpy4PPdkH3_S.pgp
Description: PGP signature