This is the mail archive of the
mailing list for the glibc project.
libm.so vs libgcj.so
- From: Jack Howarth <howarth at bromo dot msbb dot uc dot edu>
- To: libc-alpha at sources dot redhat dot com
- Date: Sun, 18 May 2003 11:42:18 -0400 (EDT)
- Subject: libm.so vs libgcj.so
I hunting down incorrectly linked libraries in debian ppc sid
which report undefined non-weak symbols. In the case of libt1.so.1
I am puzzled however. The following symbols are picked up as
ldd -r /usr/lib/libt1.so.1
libc.so.6 => /lib/libc.so.6 (0x0fe80000)
/lib/ld.so.1 => /lib/ld.so.1 (0x08000000)
undefined symbol: ceil (/usr/lib/libt1.so.1)
undefined symbol: floor (/usr/lib/libt1.so.1)
undefined symbol: cos (/usr/lib/libt1.so.1)
undefined symbol: sin (/usr/lib/libt1.so.1)
which suggests either linking against /lib/libm-2.3.2.so or
/usr/lib/libgcj.so.4.0.0. In the case of libm.so however
these symbols are weak...
nm -D /lib/libm-2.3.2.so | grep ceil
0fe09458 W ceil
whereas they aren't weak in libgcj.so...
nm -D /usr/lib/libgcj.so.4.0.0 | grep ceil
00410090 T ceil
I am a bit puzzled at why they are weak in libm.so and if
I should be recommending a linkage on -lgcj rather than
-lm instead. Which is more correct here?