[uClibc] A simple uClibc-based system with an old linux kernel?
Thomas Huld
thomas.huld at jrc.it
Fri Jul 25 07:19:54 UTC 2003
Ciao Tutti,
Is there any way of making the uClibc development system (compiled with
buildroot) work to produce binaries that will work under an older linux
kernel (2.0.3x)?
I would like to run such a system on a modern linux machine (2.4.21), but
using it to produce a small system with uClibc, busybox and tinylogin running
under an old kernel (to save space).
I've tried but I have run into problems. An out-of-the-box development system
(the downloadable root_fs-i386) produces binaries that don't run at all under
linux 2.0.34 (it complains about getcwd() not being implemented).
I then tried to substitute all the linux includes in the /usr/include
subdirectories with the include files from the 2.0.34 kernel. After a bit of
tweaking I could get uClibc, busybox and tinylogin to compile. Then I can
actually boot the old linux system and some things work.
BUT: the system is somewhat rickety. For instance: when busybox is called with
a not-implemented applet name it exits with the error message, but this
causes the underlying (busybox) ash shell to crash as well! I've narrowed the
problem down to a call to the builtin va_end. Does this mean that it is the
compiler that produces code not compatible with linux-2.0.34?
I tried to build the toolchain with the older gcc-2.95.x, but the result was
the same.
In short: HELP!! I would really like to build a very small system based on
uClibc and a kernel that doesn't take up too much space. Can it be done in
this way? Do I need an even older gcc or something?
Alternatively, (this is getting off-topic): does anybody have a link to
information about how to pare down a 2.4 kernel to the absolute minimum?
TIA
Thomas
--------------------------------------------------
Thomas Huld
Joint Research Centre of the European Commission
T.P. 450
I-21023 Ispra, Italy
phone: +39 0332785273
e-mail: Thomas.Huld at jrc.it
--------------------------------------------------
More information about the uClibc
mailing list