dynamic symbol not defined

Shaun Jackman sjackman@gmail.com
Wed Apr 6 21:44:00 GMT 2005


While compiling busybox using newlib 1.12.0, I ran into this
unexpected versioned symbol warning:

/usr/bin/ld: warning: type and size of dynamic symbol
`_ctype_@@VERS_1.10' are not defined

The newlib solib has these symbols defined:

$ nm /usr/lib/libc-newlib.so.0.0.0 | grep VERS
00000000 A VERS_1.10
00000000 A VERS_1.11
00000000 A VERS_1.12

While busybox has a number of versioned symbols defined:

$ nm busybox | grep @@VERS | wc
    178     360    5246

The binary seems to work despite the warning, but I'm curious what has
gone wrong here. For one thing, why is busybox using the VERS_1.10
interface instead of the VERS_1.12 interface?

Please cc me in your reply. Thanks,
Shaun

$ gcc -nostdlib /usr/lib/newlib/crt0.o -Wl,-warn-common -o busybox
-Wl,--start-group applets/applets.a archival/archival.a
archival/libunarchive/libunarchive.a coreutils/coreutils.a
console-tools/console-tools.a debianutils/debianutils.a
editors/editors.a findutils/findutils.a init/init.a
miscutils/miscutils.a modutils/modutils.a networking/networking.a
networking/libiproute/libiproute.a networking/udhcp/udhcp.a
procps/procps.a loginutils/loginutils.a shell/shell.a
sysklogd/sysklogd.a util-linux/util-linux.a libpwdgrp/libpwdgrp.a
coreutils/libcoreutils/libcoreutils.a libbb/libbb.a -L/usr/lib/newlib
-lc -lgcc -Wl,--end-group
/usr/bin/ld: warning: type and size of dynamic symbol
`_ctype_@@VERS_1.10' are not defined



More information about the Binutils mailing list