cross-compilers...

David Woodhouse dwmw2 at infradead.org
Mon Oct 13 12:26:50 UTC 2008


On Mon, 2008-10-13 at 13:18 +0100, Caolán McNamara wrote:
> I see that our binutils has a very convenient binutils_target ifdef in
> it to make cross-binutils. Before I home-cook something to hack up some
> local up-to-date cross compilers for myself for icecream/distcc, do we
> have any semi-standard hackery for making arbitrary cross-gcc gcc/g++
> rpms from our vanilla gcc one ?

No, not yet. We still haven't really worked out how to deal with the
incestuous dependencies between libgcc and glibc (mostly that
libgcc_shared.so needs to be linked against libc).

Options include 
 - requiring a pre-existing glibc for the target
 - shipping glibc sources as _part_ of the gcc package and doing it all
   together
 - building gcc with a dummy shared library for libgcc to link against,
   rather than the _actual_ glibc.so. It only needs to have entry points
   for a few functions; it doesn't have to have any actual _code_.
 - splitting the gcc package into two -- the first stage which can be
   built without shared libraries and then a second stage where
   libgcc.so and other stuff gets built (after glibc exists). As
   separate .src.rpm packages.

There are issues with each, and there are probably more options that
I've forgotten. I tend to favour the dummy library option, although I
never got as far as proving that it's actually viable.

If you want to look into it and come up with something we can actually
ship, that would be great.

-- 
David Woodhouse                            Open Source Technology Centre
David.Woodhouse at intel.com                              Intel Corporation




More information about the devel mailing list