On Mon, Feb 07, 2005 at 12:10:37PM +0100, Ralf Corsepius wrote: > Hi, > > Is it correct, that FC3's gcc on x86_64 uses these multilibs: > > $ x86_64-redhat-linux-gcc -print-multi-lib > .; > 32;@m32 > > IMO, this is wrong and should either be > (assuming . matching -m64 | lib64) > .; > 32;../lib > > or (assuming . matching -m32 | lib) > .; > 64;../lib64 > > If x86_64 gcc was using one of the latter muliblib-sets, > gcc -m64 -L/xxx/lib > would automatically pickup m64 compiled libs from /xxx/lib/../lib64, > instead of those from /xxx/lib. > > Unfortunately I don't have access to x86_64 systems :-( Nope, it is correct. -print-multi-lib is about what multilib combinations exists and the relative path they are using inside of /usr/lib/gcc/*/*/ etc. -print-multi-os-directory is what tells you the relative path used to search multilib directories that are under OS rather than GCC's convention. For gcc that defaults to -m64 you get: gcc -print-multi-os-directory -m32; gcc -print-multi-os-directory -m64; gcc -print-multi-os-directory ../lib ../lib64 ../lib64 Jakub