[BusyBox] cannot execute busybox on an arm platform
olivier.delouya at takimaging.com
olivier.delouya at takimaging.com
Wed Feb 9 09:05:49 UTC 2005
Hi,
I am trying to replace the basic command set of my ramdisk with the single
busybox.
I downloaded the package from busybox.net and got the source compiled
seamlessly.
However, I cannot execute it on my arm target:
The loader complains with such statement:
busybox: /lib/libc.so.6: version 'GLIBC_2.3' not found (required by
busybox)
Does any one know why?
I use a debian 2.6.4 kernel with a libc6_2.2.5-11.8 that I got from the
debian.org.
When I dig a little bit more into the busybox binary with arm-linux-nm, I
can see 3 undefs:
U __ctype_b_loc@@GLIBC_2.3
U __ctype_tolower_loc@@GLIBC_2.3
U __ctype_toloupper_loc@@GLIBC_2.3
and If I look into the libc.6.so on the arm target, I can see:
D __ctype_b
D __ctype_tolower
D __ctype_toupper
Investigating further on showed me that ctype macros defined in the
ctype.h of my
x86 cross compilation system were mapped on __ctype_xxx_loc (for
localized, apparently).
I did try to remap them back to older __ctype_xxx definitions (aka, non
localized)..
It worked fine for tolower and toupper but this time it failed at link
time with __ctype_b
which gcc complains it does not find (undefined reference to __ctype_b)
If I look into the libc.so.6 of my x86 cross compilation system, I can see
D __ctype_toupper at GLIBC_2.0
D __ctype_tolower at GLIBC_2.0
D __ctype_b at GLIBC_2.0
T __ctype_b_loc
Although I don't control very well the "@GLIBC decoration" meaning, I
don't understand
why it passed the link with __ctype_tolower and __ctype_toupper and not
with __ctype_b
any idea?
I have to add that I tried without success many "cross-hacks"
- I tried to compile busybox with the header and lib files from the debian
package libc6dev_2.2.5-11.8
normally associated with the libc6_2.2.5-11.8 run time - not a bad idea,
presumably -
it failed at compilation time with the error .../include/bits/sigthread.h:
storage class specified for parameter 'type name' (from file
archival/gzip.c)
- I tried to replace the target libc.so.6 with the one on my cross
compilation system..
panic! init cannot load..
What is the appropriate combination???
Like we say in french, "I have my head in the cheese!"
Thanks to help me
Olivier Delouya - TAK-imaging
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.busybox.net/pipermail/busybox/attachments/20050209/0be36fba/attachment-0001.htm
More information about the busybox
mailing list