Help needed with Busybox
Javier Gracia Castro
javier.graciacastro at tut.fi
Fri Apr 13 09:37:02 UTC 2007
Hi again,
I have tried many times BusyBox 1.4.2 and 1.5.0 in my file system
(2.6.20 Linux kernel in AT91RM9200-EK) and it didn't work.
I followed the instructions explained in the INSTALL file and I used a
uClibc toolchain to cross-compile it (I used make defconfig to
configure it, and out-of-tree building). Any error occurred during the
compilation and everything was fine (I also changed Makefile to set my
ARCH and CROSS_COMPILER). In my file system are available the same uC
libraries.
The file system doesn't boot because of I can't execute busybox
executables. And then /sbin/init is not executed and my system isn't
initialized. If I set in my uboot, init=/bin/bash (a compiled bash
that doesn't belong to busybox) then it boots, but in an initialized
environment. When I try to execute any busybox application I obtain:
Illegal instruction
Only module commands (lsmod, insmod, modprobe) seem to work, but I
can't use them because they try to read files located in /proc that
aren't still generated.
When I type 'busybox', I obtain the list of all commands, but if I try
to use any of them, I can't.
From my compiling directory when I type 'file busybox', I obtain:
busybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically
linked (uses shared libs), stripped
So the target architecture is correct and my cross-toolchain works
because a hello-world application compiled with it worked on the target.
It's very disappointing for me this problem, because then I will have
to move to a 2.4 kernel to be able to use module commands provided in
my original file system.
If anyone succeeded at compiling and installing busybox in his root fs
and solved this problem, please send my your comments.
Best regards,
Javier
More information about the busybox
mailing list