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