Dynamic libraries do not work
Grant Likely
glikely at gmail.com
Sat May 28 10:50:06 EST 2005
On 5/27/05, Theo Gjaltema <gjalt007 at chello.nl> wrote:
>
>
> Toolchain used: ELDK 2.0
> target processor: mpc862
> RAM: 64 Mbyte
> Kernel: 2.4.20, extended with ATM/UTOPIA
> init: /sbin/init -> /bin/busybox
>
>
> (using a static linked busybox: activating a sh (=busybox)
> ::sysinit:/bin/sh)
> sh: /lib/ld.so.1 (note: /lib/ld.so.1 is a link to
> /lib/ld.so.2.5.5, part of the ELDK 2.0 )
> < help page of ld.so.1>
> sh: /lib/ld.so.1 --verify /bin/xxx (or just any dynamic linked executable)
> <here the system has crahed>
>
> or
> sh: /bin/xxx
> <here the system has crashed>
>
> I have tried to step through the dynamic linking, but did not succeed
> til after the creation of a thread.
> With a dynamic linked busybox the system stops after a message such as
> "freeing xxx kbytes" (I don't know the actual number by head)
> When init is then called, which is a part of the busybox which is dyn.
> liked, it crashes.
>
It's really hard to give any advice with the limited data.
Do you get a kernel panic? Has the kernel crashed or has it become
unresponsive. Making a large number of assumptions, it sounds like
you've got a kernel problem, not a dynamic linking problem. Dynamic
linking is handled 100% in user space. If init crashes (or is killed)
you should get a kernel panic message. The fact that you get nothing
says to me that dynamic linking is simply exposing a kernel bug.
A good place to start is to make sure all of memory is working. Try a
simple test; allocate memory in an infinite loop and see where it
breaks.
Cheers,
g.
More information about the Linuxppc-embedded
mailing list