[uClibc] trouble building toolchain

Manuel Novoa III mjn3 at codepoet.org
Thu Feb 12 02:19:18 UTC 2004


On Thu, Feb 12, 2004 at 02:38:12AM +0100, Philippe De Swert wrote:
> 
> For the rest, is there somebody that can help me out with my other questions?

Do you mean:

- I cannot find a workaround for the --without-headers option that does
  not work anymore except for some comments in the gcc-uclibc-....mk file.

The build procedure in buildroot (and toolchain) is what I found worked.
It would not surprise me if there were a better way.  But at the moment
the focus is on getting the toolchain patches cleaned up for submission
upstream.  After that, it can become just another crosstool build.

- In this case do I have to build uclibc in the usual way (make
  menuconfig, make CROSS=arm-uclibc-linux-gcc) ?

We build <arch>-linux-uclibc... not <arch>-uclibc-linux.  The latter
would just be a vendor version of a glibc toolchain.  There are
differences between glibc and uClibc which need to be addressed in
the configuration.  See the patches for gcc, binutils, and gdb.

For all the other buildroot packages, we can simply configure as
<arch>-linux.  See the relevant symlinks in buildroot's
build_<arch>/staging_dir/bin.

- If I want to build it again with softfloats when do I have to
  compile thet extra softfloat library (I presume after I compiled
  uclibc and before the final gcc)

No.  libfloat needs to be built before uClibc.  Look at the make
dependencies and perhaps a log of a buildroot build.  The shared libc
is linked with libfloat.

- Am I right if it seems that in the toolchain building script gcc is built 3
  times?

Build order is binutils, bootstrap gcc, libfloat (for soft-float arm only),
uClibc, and uClibc-targeted gcc.  That builds the cross toolchain for
buildroot.  Then, if desired, one can build a native toolchain for the
target.

Manuel



More information about the uClibc mailing list