uclibc

Robert Connolly robert at linuxfromscratch.org
Wed Sep 19 22:39:49 PDT 2007


I'm trying with gcc-4.2.1, binutils-2.18, uclibc-0.9.29, and I'm getting:

checking whether the C compiler works... configure: error: cannot run C 
compiled programs.
...
make[1]: *** [configure-target-libstdc++-v3] Error 1

caused by a (in i686-pc-linux-uclibc/libstdc++-v3/config.log):

xgcc: '-V' must come at the start of the command line

I thought gcc42 got uClibc support added, but not quite. The native language 
support is not done yet, mainly g++ stuff, and there's 1 bugfix 
(flatten-switch-stmt). In:
http://www.uclibc.org/cgi-bin/viewcvs.cgi/trunk/buildroot/toolchain/gcc/4.2.1/

we need all the locale patches, and the flatten-switch-stmt patch. The c99 
patches are a good idea too.

The libbackend_dep_gcov-iov.h patch is needed for --enable-intermodule (this 
is not uClibc specific), when building in a combined tree. We don't do this 
in HLFS... I'd like to but unless you have 4GB of RAM it will take forever. I 
do it. It will make GCC a bit smaller and faster. So it might be worth noting 
the uclibc.org patch, or equivalent Sed command.

The new conf patch can be done with an Find/Sed command, so it would work 
regardless of whether you unpacked the big GCC tarball, or just C and C++.

The susv3 patch isn't a bad idea either, even though we need susv3 
compatibility in uClibc to build many packages (Busybox doesn't need it 
anymore). This patch might also be worth noting if you're building a 
minimized system with Busybox.

The GCC42 and Binutils-2.18 should be fairly smooth. There haven't been many, 
or any, gcc42 patches that I'm aware of. There are few differences between it 
and gcc41, except more stricter warnings. This upgrade allows us to drop 
about a dozen upstream patches.

I'm going to continue updating the book with non-gcc42/non-binutils2.18 uClibc 
differences to try to unbreak the uclibc-book. When I have all the new gcc42 
patches done, and building, I'll post a non-official book to work out 
regressions.

Later on, one day, I'd like a chapter for a mini, rescue, or embedded, system 
which lacks the toolchain and extra documentation. With maybe a list of 
packages which need susv3, for example. With general examples of what 
programs are usually not needed. To help implement firewall servers, rescue 
discs (loop-aes style chain booting and pivotroot), mips routers, etc. Often 
these systems are created in a file mounted with a loop device and formated, 
before they're copied to the destination, so needing an additional partition 
should be rarely required. These howto's exist, but I don't like any of them, 
and they tend to be grossly out of touch and out of date (and use stuff 
like 'mkinitrd' which we don't have). I've wanted to make a rescue disc for 
personal use for years, and never got around to it. Stuff like Knoppix works 
great, but is very bloated and works better as a Linux-demo. And then perhaps 
use this as the foundation for an HLFS-InstallCD or pendrive (this would be 
much further later on). Perhaps some of you can give notes, like needed 
packages for a minimal iptables firewall, that I can collect.

robert

On Wednesday September 19 2007 10:36:40 pm goodoldmarty at gmail.com wrote:
> buildroot got me a stable dev system (pic) with gcc 4.2.1.
> gcc 4.1.2 was really problematic with uClibc and I abandoned it.
> I think the formula for the uClibc book is broken so I am trying to
> migrate to the more compatible versions. That may get a working system.
>
> Marty B


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.linuxfromscratch.org/pipermail/hlfs-dev/attachments/20070920/d69eabaf/attachment.sig>


More information about the hlfs-dev mailing list