Hi,
while compiling redhat 5.0 rpms, I've found something very strange, when
building shared libraries. Some of the built shared libs are very big and
a nm on them shows, that the whole libc (I guess so) is included. Binaries
inked against these library just dump core. The built line for these shared
libs always ends with a -lc. Now I'm wondering wether this is a ld bug or
just a user error. What's really weird is the following patch from one
of the redhat rpms:
--- termcap-2.0.8/Makefile.ewt Tue Jul 8 11:08:00 1997
+++ termcap-2.0.8/Makefile Tue Jul 8 11:08:12 1997
@@ -41,7 +41,7 @@
$(SHARED_LIB): $(OBJS)
cd pic; \
- $(CC) -shared -o ../$@ -Wl,-soname,$(SONAME_SHARED_LIB) $(OBJS)
+ $(CC) -shared -o ../$@ -Wl,-soname,$(SONAME_SHARED_LIB) $(OBJS) -lc
pic:
-if [ ! -d pic ]; then mkdir pic; fi
So it looks like the ld for alpha and i386 don't include the whole libc
when linked with the comand line above. Any hints ?
Thomas.
--
See, you not only have to be a good coder to create a system like Linux,
you have to be a sneaky bastard too ;-)
[Linus Torvalds in <4rikft$7g5@linux.cs.Helsinki.FI>]
|