Thank you for your help. Indeed the dynamic loader of uclibc is the cause. I upgraded to latest uclibc-0.9.29, and finally the files was linked against uclibc's ld. But it did not work... Tried to run a dynamic linked executable via static shell, and got floating point exception. Tried to compile toolchain and uclibc with softfloat, but still did not work. So I moved to glibc and all works correctly. Thank you for quick response! I will continue the discussion at uclibc lists. Best Regards, Alon Bar-Lev. On 12/19/07, Willy Tarreau <w@xxxxxx> wrote: > On Wed, Dec 19, 2007 at 12:09:46AM +0200, Alon Bar-Lev wrote: > > On 12/18/07, H. Peter Anvin <hpa@xxxxxxxxx> wrote: > > > Make sure your /init doesn't depend on an interpreter or library which > > > isn't available. > > > > Thank you for your answer. > > > > I already checked. > > > > /init is hardlink to busybox, it depends on libc.so.0 which is available at /lib > > Are you sure that libc.so.0 is enough and that you don't need any ld.so ? > > > But shouldn't I get a different error code if this is the case? > > If it does not find part of the dynamic linker or libraries, this error > makes sense to me. > > You should try to build a static init with any stupid thing such as a > hello world to ensure that the problem really comes from the init and > nothing else. > > Regards, > Willy > >