Subject: Re: crtend.o : how to find the Holy Graal ?
To: None <current-users@NetBSD.ORG>
From: David Laight <email@example.com>
Date: 10/24/2002 19:31:25
> > Shared object "crtend.o" not found
> > $ ldd /usr/local/libexec/rox/ROX-Filer
> > ldd in free(): warning: chunk is already free. <-- (1) See that?
> > /usr/local/libexec/rox/ROX-Filer:
> > -liconv.3 => /usr/local/lib/libiconv.so.3
> > [...]
> > -lc.12 => /usr/lib/libc.so.12
> > crtend.o => not found <-- (2) See that?
> I got exactly the same on my i386 1.6I with a few programs, did a ktrace of it
> to see if it actually tried to look for it. And lo' and behold, if even
> finds it. But then does something to it that I'll have to look into.
That happens because crtend.o isna't a shared library.
Do an 'objdump -p' (I think that's the option) on all the
shared libraries that are loaded and look for a 'NEEDED'
entry for crtend.o - there shoudn't be one.
It might be worth noting that ldd uses code from ld.elf_so
so the recent changes to the loader might not be completely
compatible with th eldd source.
David Laight: firstname.lastname@example.org