Subject: Re: Uhm. Is this a feature?
To: None <seebs@plethora.net>
From: Brad Spencer <brad@anduin.eldar.org>
List: current-users
Date: 05/28/2000 18:15:23
   In message <200005281759.MAA03073@guild.plethora.net>, Peter Seebach writes:
   >So, the problem goes away if I rebuild all the stuff in /usr/*bin.

   I spoke too soon.

   # ./tail
   /usr/lib/libc.so.12: Undefined symbol "__mainprog_obj" (reloc type = 25, symnum = 1024)
   [fix libc]
   # nm tail | grep main
   0000000120103f10 B __mainprog_obj

   So, I don't get it.  There is a symbol named __mainprog_obj, yet it doesn't
   seem to be found enough.

   -s



The response for the shared linker is simular in nature to one that I got
when I tried to build a NetBSD/sparc 1.4Y box as an a.out system instead
of an ELF one.  No amount of fiddling around could make the build work.  I
ended up installing a snapshot, booting diskless and building an ELF
world.

Oddly, my NetBSD/i386 box would build fine, with the same source tree, as
an a.out system.

Except for crypto-us/lib/libdes.  There is a warning in the Makefile
stating:

#       XXX x86 assy produces lots of RRS text relocation errors on shared
#       XXX lib, must fix.

This really should be looked into...  I think that these are fatal, not
just an annoyance.  They most often happen when a nonposition independent
code is mixed in with position independent code in the same shared object.
I just ended up using the C versions of those functions.  If I left the
assembly ones in there anything built with libdes [like su, etc..] would
fail trying to find one of the more common des functions.




Brad Spencer - brad@anduin.eldar.org   http://anduin.eldar.org
[finger brad@anduin.eldar.org for PGP public key]