From: blee@tim (Bryson Lee) Subject: [Q] __NEEDS_SHLIBC_4 multiply defined Date: Thu, 8 Jul 1993 14:51:00 GMT
I am running the SLS distribution of kernel 0.99p6 with gcc 2.3.3, and have
recently upgraded to libc.4.3.3 in conjunction with installing MetroLink's
Motif package. Whenever I allow gcc to default to linking an application
shared, I receive two error messages during the link phase:
libgcc.sa: libc.o: ERROR _NEEDS_SHLIBC_4 multiply defined
libc.as: libc.o: ERROR _NEEDS_SHILBC_4 multiply defined
and then the link fails. (Note: I don't vouch for the exact syntax of the
above messages, but hopefully I've reproduced enough to jog someone's memory.)
If I compile the program with -g or -static, the error does not occur. If I
use -nostdlib and explicitly specify ... -lc, I get a different error:
XXXXX.o: undefined symbol ___main() referenced from text segment
which I can fix by changing main() to _main() and recompiling.
I can't figure out what got tweaked during the library upgrade, but I'm hoping
that it's an easy fix, as I'm not really in a position to move to 0.99p10 or
11 + gcc 2.4.x + libc.4.4.
Any help, suggestions, or even RTFM's (at least I'd know where to look then)
would be greatly appreciated.
Thanks much,
Bryson