On Fri, 2007-01-05 at 11:12 +0000, Andrew Haley wrote: > Paul Smith writes: > > > > However, libstdc++ is handled differently: the compiler build generates > > both a lib/libstdc++.so and also a lib/soft-float/libstdc++.so (same > > names, different directories). On my target filesystem there is only > > one: /usr/lib/libstdc++.so and investigation shows this to be the fp > > version, not the soft-float version. > > This is very odd. Are you saying that when you do "make install" the > soft-float versions of the libraries aren't copied into $PREFIX at > all? If so, this is a bug. Thanks for the response Andrew! Well, the library not being installed is something easily resolved. The real question is, WHERE is it supposed to be installed, and how is it supposed to work? For libstdc++, unlike libgcc_s, the filenames for the soft- and hard-float versions are the same so (again unlike libgcc_s) they obviously have to be installed into different directories if both are present on the system at the same time (which is what we want, it seems to me). Even more concerning, the soname for the soft- and hard-float versions of libstdc++ is the same (again, unlike libgcc_s), so even if both versions WERE installed (and both paths were configured via ldconfig or whatever) I don't see how the runtime linker could choose the right one! Either there's some deeper magic here that I'm unfamiliar with (quite likely!), or it's just not possible to have both the soft- and hard-float versions of libstdc++ available (and usable) on the same system at the same time (and again, unlike libgcc_s where this is quite possible and works fine). If someone can explain how this is supposed to work (or point me to the relevant docs etc.) then I'll be happy to investigate the simpler question of why "make install" is not doing the right thing... once I understand what "the right thing" is :) Cheers!