Strange dependency on an unlinked shared library

Arun Kumar arun.einstein@gmail.com
Tue Mar 22 09:03:00 GMT 2011


Hello All,

  I'm linking an application against some shared libraries, which are
compiled locally:

        gcc -Wl,--rpath=$ORIGIN/lib -L../../ffmpeg/lib -lavformat
-lavutil  my_prgram.o -o my_program

  When I do an
                 readelf -a my_program

   I see that the libraries libavformat.so.52, libavutil.so.49 etc..
(basically the libraries in the path `../../ffmpeg/lib') are `NEEDED'
and not anything else, but strangely enough
when I try to execute -- it has a dependency on another
libavformat.so.51 (probably an older version which might have been
installed on the system in the past, but not on `NEEDED'
list).

Also on executing:

               ldd

   It shows the dependency on the older version of the library is `not
found'. I'm baffled, is there a possibility of executable asking for a
library it was not linked against?

--
Cheers & Regards,
Arun Kumar M S



More information about the Binutils mailing list