cvs commit: src/usr.bin/ldd ldd.1 ldd.c

Edwin Groothuis edwin at FreeBSD.org
Thu Jul 10 01:32:24 UTC 2008


edwin       2008-07-10 01:32:08 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    usr.bin/ldd          ldd.1 ldd.c 
  Log:
  SVN rev 180404 on 2008-07-10 01:32:08Z by edwin
  
  MFC of changes 180234-180236:
  
  On 64 bit architectures, you can run 32 bit executables and the rtld can trace them, but ldd(1) doesn't know yet how to detect them:
  
      [/] root at ed-exigent>ldd `which httpd`
      ldd: /usr/local/sbin/httpd: can't read program header
      ldd: /usr/local/sbin/httpd: not a dynamic executable
  
      But...
  
      [/] root at ed-exigent>LD_32_TRACE_LOADED_OBJECTS==1 `which httpd`
      libm.so.4 => /lib32//libm.so.4 (0x280c8000)
      libaprutil-1.so.2 => /usr/local/lib/libaprutil-1.so.2 (0x280de000)
      libexpat.so.6 => /usr/local/lib/libexpat.so.6 (0x280f2000)
      libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x28110000)
      libapr-1.so.2 => /usr/local/lib/libapr-1.so.2 (0x281fd000)
      libcrypt.so.3 => /lib32//libcrypt.so.3 (0x2821d000)
      libpthread.so.2 => not found (0x0)
      libc.so.6 => /lib32//libc.so.6 (0x28235000)
      libpthread.so.2 => /usr/lib32/libpthread.so.2 (0x2830d000)
  
      Added support in ldd(1) for the LD_32_xxx environment variables if
      the architecture of the machine is >32 bits. If we ever go to 128
      bit architectures this excercise will have to be repeated but thanks
      to earlier commits today it will be relative simple.
  
  PR:             bin/124906
  Submitted by:   edwin
  Approved by:    bde (mentor)
  
  Revision   Changes    Path
  1.24.2.1   +6 -0      src/usr.bin/ldd/ldd.1
  1.33.24.1  +211 -101  src/usr.bin/ldd/ldd.c


More information about the cvs-src mailing list