Missing dependencies on shared libraries
Victor Balada Diaz
victor at bsdes.net
Sat Apr 15 18:45:18 UTC 2006
On Sat, Apr 15, 2006 at 12:26:57PM -0600, M. Warner Losh wrote:
> In message: <Pine.GSO.4.64.0604151411140.9269 at sea.ntplx.net>
> Daniel Eischen <deischen at freebsd.org> writes:
> : On Sat, 15 Apr 2006, M. Warner Losh wrote:
> :
> : > In message: <Pine.GSO.4.64.0604151358210.9220 at sea.ntplx.net>
> : > Daniel Eischen <deischen at freebsd.org> writes:
> : > : On Sat, 15 Apr 2006, M. Warner Losh wrote:
> : > :
> : > : > In message: <Pine.GSO.4.64.0604141439280.3685 at sea.ntplx.net>
> : > : > Daniel Eischen <deischen at freebsd.org> writes:
> : > : > : On Fri, 14 Apr 2006, Victor Balada Diaz wrote:
> : > : > :
> : > : > : > Hi,
> : > : > : > I found that ldd doesn't report libc as a dependency on most (all?)
> : > : > : > libraries:
> : > : > : >
> : > : > : > pato> ldd /usr/lib/libfetch.so
> : > : > : > /usr/lib/libfetch.so:
> : > : > : > libssl.so.3 => /usr/lib/libssl.so.3 (0x4816a000)
> : > : > : > libcrypto.so.3 => /lib/libcrypto.so.3 (0x48198000)
> : > : > : >
> : > : > : > does anyone know why?
> : > : > :
> : > : > : AFAIK, it's being worked on. It's not just libc either, -pthread
> : > : > : also has to start linking to libpthread.
> : > : >
> : > : > We don't record libc dependencies into shared libraries right now. If
> : > : > we did, that would create some problems and solve some problems. With
> : > : > symbol versioning, it most likely will become moot, since we'll never
> : > : > have to bump libc major version again...
> : > :
> : > : kan stated he was working on doing this, which is what I was
> : > : referring to above.
> : >
> : > That makes sense. If you explicitly include libc on the command line
> : > to build the library, it is included...
> :
> : Here's the link to his original reply to -current. Also, if you
> : look at linux shared libraries, you'll note they have dependencies
> : to libc.
>
> I guess what I'm saying is that on FreeBSD, the system built shared
> libraries don't have libc recorded in them because we don't add -lc on
> the commnad line to build them.
If i try to add -lc ldd doesn't show it as a dependency, but
readelf/dumpelf does show it as NEEDED. Is this the expected behavior?
Why isn't ldd showing the dependency?
--
La prueba mas fehaciente de que existe vida inteligente en otros
planetas, es que no han intentado contactar con nosotros.
More information about the freebsd-hackers
mailing list