[discuss] Re: --with-sysroot required when building 32->64 bit crosstoolchain? (was: building a cross-compiler is hard)

Daniel Kegel dkegel@google.com
Thu Jan 8 01:58:00 GMT 2004


Daniel Jacobowitz wrote:
> On Wed, Jan 07, 2004 at 02:54:36PM -0800, Daniel Kegel wrote:
> 
>>so I guess ld doesn't obey -L for that file?!
> 
> 
> Yes.  It doesn't matter that it's a 32/64-bit cross environment, it's
> still a cross environment to a hosted target.  DT_NEEDED are only
> searched via -rpath-link and SEARCH_DIR.

It matters that it's a 32/64 bit cross environment because otherwise
I wouldn't need --with-sysroot...

> You can use --with-sysroot for binutils without using it for GCC.  It's
> not necessarily a good idea though.

I'm trying it throughout.  It's hard to figure out how to use, though.
I had been jimmying things so there is no /usr, i.e. so all libraries are
in $PREFIX/lib, all includes in $PREFIX/include, as is customary when
building cross-compilers.  But I get the feeling that --with-sysroot wants
me to do things the LSB way, with a split between /lib and /usr/lib,
so I'm giving that a shot.  Needless to say, this is painful.  I'm
currently stuck building crtbegin.o because for some reason
xgcc is being told to look in $PREFIX/include... gotta figure out
where I missed adding a /usr ... grumble.
- Dan



More information about the Binutils mailing list