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

Edwin Groothuis edwin at FreeBSD.org
Thu Jul 3 22:38:08 UTC 2008


edwin       2008-07-03 22:37:51 UTC

  FreeBSD src repository

  Modified files:
    usr.bin/ldd          ldd.1 ldd.c 
  Log:
  SVN rev 180236 on 2008-07-03 22:37:51Z by edwin
  
  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)
  MFC after:      1 week
  
  Revision  Changes    Path
  1.27      +6 -0      src/usr.bin/ldd/ldd.1
  1.36      +76 -2     src/usr.bin/ldd/ldd.c


More information about the cvs-src mailing list