Subject: Re: crtend.o : how to find the Holy Graal ?
To: None <current-users@NetBSD.ORG>
From: Anders Mundt Due <amd@pd-house.dk>
List: current-users
Date: 10/24/2002 21:31:49
On 24 Oct, David Laight wrote:
> > > Shared object "crtend.o" not found
> > > 
> > 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.
> 

Hmm.. It would appear that it's "vim" in my case, that NEEDED crtend.o ..

$ objdump -p /usr/pkg/bin/vim

/usr/pkg/bin/vim:     file format elf32-i386

Program Header:
    PHDR off    0x00000034 vaddr 0x08048034 paddr 0x08048034 align 2**2
         filesz 0x000000c0 memsz 0x000000c0 flags r-x
  INTERP off    0x000000f4 vaddr 0x080480f4 paddr 0x080480f4 align 2**0
         filesz 0x00000017 memsz 0x00000017 flags r--
    LOAD off    0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
         filesz 0x000d57e0 memsz 0x000d57e0 flags r-x
    LOAD off    0x000d57e0 vaddr 0x0811e7e0 paddr 0x0811e7e0 align 2**12
         filesz 0x0000a2e4 memsz 0x0000fb70 flags rw-
 DYNAMIC off    0x000df9dc vaddr 0x081289dc paddr 0x081289dc align 2**2
         filesz 0x000000e8 memsz 0x000000e8 flags rw-
    NOTE off    0x0000010c vaddr 0x0804810c paddr 0x0804810c align 2**2
         filesz 0x00000018 memsz 0x00000018 flags r--

Dynamic Section:
  NEEDED      libgtk.so.12
  NEEDED      libgdk.so.12
  NEEDED      libgmodule.so.13
  NEEDED      libglib.so.13
  NEEDED      libintl.so.0
  NEEDED      libXi.so.6
  NEEDED      libXext.so.6
  NEEDED      libm.so.0
  NEEDED      libXt.so.6
  NEEDED      libcurses.so.5
  NEEDED      libc.so.12
  NEEDED      crtend.o
  RPATH       /usr/X11R6/lib:/usr/pkg/lib
  INIT        0x804d6cc
  FINI        0x8107334
  HASH        0x8048124
  STRTAB      0x804a9ec
  SYMTAB      0x8048c9c
  STRSZ       0x1e0f
  SYMENT      0x10
  DEBUG       0x0
  PLTGOT      0x81282dc
  PLTRELSZ    0xda0
  PLTREL      0x11
  JMPREL      0x804c8c4
  REL         0x804c7fc
  RELSZ       0xc8
  RELENT      0x8


/Anders