Still help needed with Busybox
Javier Gracia Castro
javier.graciacastro at tut.fi
Tue Apr 17 00:23:32 PDT 2007
Hi,
Thank you very much for replying me. I have put in practice your
advice. When I do 'file busybox' in the Busybox package compiled by
me, it shows:
busybox: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically
linked (uses shared libs), stripped
When I do 'name_crosscompiler-readelf -h busybox':
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0xd344
Start of program headers: 52 (bytes into file)
Start of section headers: 724300 (bytes into file)
Flags: 0x4000002, has entry point, Version4 EABI
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 6
Size of section headers: 40 (bytes)
Number of section headers: 24
Section header string table index: 23
I obtain the same output if I use a glibc cross-compiler or an uClibc
cross-compiler. With the glibc cross-compiler I compiled the linux
kernel and also u-boot and they work fine. In my file system is
installed uClibc and when I compile a hello-world application it works
in the file system.
If I type 'file-busybox' for the Busybox package that works (version
1.1.2, not compiled by me), it appears:
busybox: setuid ELF 32-bit LSB executable, ARM, version 1 (ARM),
dynamically linked (uses shared libs), stripped
With 'name_crosscompiler-readelf -h busybox':
ELF Header:
Magic: 7f 45 4c 46 01 01 01 61 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: ARM
ABI Version: 0
Type: EXEC (Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0xc34c
Start of program headers: 52 (bytes into file)
Start of section headers: 437340 (bytes into file)
Flags: 0x2, has entry point, GNU EABI
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 5
Size of section headers: 40 (bytes)
Number of section headers: 23
Section header string table index: 22
I modified Makefile with ARCH=arm and
CROSS-COMPILER=name-crosscompiler. Then I don't know why it appears
'OS/ABI: UNIX - System V' (SYSV) when I compile it. For example, in
the kernel image compiled by me I can read 'OS/ABI: ARM'. Maybe my
Busybox compilations don't work because of this problem, but I don't
know how to solve it.
If you have any suggestion, please let me know. Thanks in advance.
Best regards,
Javier
More information about the busybox
mailing list