On Monday 29 August 2011 22:41:42 you wrote: > --- On Mon, 29/8/11, Tito <[email protected]> wrote: > > > Hin-Tak Leung wrote: > > > I have thought of filing a bug, but then there are too > > much loose information I'd like to post and probably are a > > few bug reports, so here they are: I have had a go at using > > the android ndk to build busybox against bionic, instead of > > against android source with an arm-targeted cross-gcc. (I > > think some of the recommendations online - using > > codesourcery's arm-gcc to build static, is just wrong). > > Hi, > > Why is it wrong? It is the only way to obtain a fully > > working > > busybox binary with all the functionality denied by the > > crippled > > bionic libc. You can even use Aboriginal linux > > (http://landley.net/aboriginal/) > > to compile it statically against uclibc for a smaller > > binary > > (or buildroot if you prefer). > > It is wrong because (1) while it is probably harmless, glibc/eglibc is not > bionic libc, and the kernel interfaces are probably subtly different - and > you might get subtly bugs/misbehavior. (2) the binary is unnessarilly large. Hi, I think the point in using busybox on android is to get the funcionality that is missing in the native tools like toolbox and the like. You will not get it unless you use a full featured libc. A side effect is that you don't get the bugs and misbehaviours due to a libc full of stubs and crippled stuff (as the missing of a passwd field explicitily set to "x" in struct passwd).
> This is mostly a generic criticism for statically build against one > brand/version/ of libc and hoping that the result would work correctly > against a different environment. In the modern devices space usually is not the problem also just compiling against bionic libc is no less hoping that it works than a static build. > > I have looked a bit and some of the missing parts or headers e.g. headers for > net/ethernet.h - for ifconfig probably make sense because android also have > 3G and other non-ethernet interface, so ifconfig isn't as useful and may even > be misleading. (e.g. "ifconfig <everything> down" does not kill all network > connectivity, say). > You don't need to use busybox for device management unless you need to achieve something that the native tools don't permit. Mostly busybox is needed to have more comfortable and standard behaving tools, nonetheless in most cooked android roms it takes over parts of toolbox functions because it just works better. I agree with you tough that is mostly a matter of taste :-) Ciao, Tito _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
