Hi, experts,

I use "ldd -u -r some-shared-library" to try to find out unreferenced 
shared libraries for all mozilla shared libraries.
According to the ldd manual, all such kind of shared libraries should be 
removed and this can reduce loading time.

Now I have some questions about this:
1. When I used "ldd -r -u libfoo.so", I was told that "libthread.so" is 
an "unused object". Does that mean that libthread.so is not
needed by libfoo.so?

2. I checked the command line of generating libfoo.so, there is no 
options related to libthread.so. e.g. no "-lthread" is given. Why
"ldd" or the runtime linker "ld.so.1" knows that libfoo.so depends on 
libthread.so?

3. Firefox ( and Mozilla) use heavily on dlopen() to load shared 
libraries, Does "ld" has some special options to optimize this?
I use "-z ignore" to ignore dynamic dependencies that are not referenced 
as part of the link-edit. Is that right?

Thanks in advance

Brian


Reply via email to