Please try this testcase on Solaris.
H . J . Lu
hjl@lucon.org
Sun May 19 07:54:00 GMT 2002
Here is a small testcase in C. I got
./main global lazy
dlopen flags: RTLD_GLOBAL | RTLD_LAZY:
module1.so: 1
module2.so: 1
./main global now
dlopen flags: RTLD_GLOBAL | RTLD_NOW:
module1.so: 1
module2.so: 1
./main local lazy
dlopen flags: RTLD_LOCAL | RTLD_LAZY:
module1.so: 1
module2.so: 0
./main local now
dlopen flags: RTLD_LOCAL | RTLD_NOW:
module1.so: 1
module2.so: 0
under Linux. Could someone please send me the output on Solaris? I tend
to believe this is a dynamic linker bug in Linux. Both module1.so and
module2.so are linked against libbar.so. But libbar.so has an undefined
symbol which is defined in both module1.so and module2.so. I guess in
this case, the local scope of module1.so and module2.so should also
include the local scope of libbar.so.
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bug.tar.gz
Type: application/x-gzip
Size: 889 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20020519/c7e7f0dc/attachment.bin>
More information about the Libc-alpha
mailing list