Subject: broken ramdiskbin build (multiple symbol definition breaks ELF -static)
To: None <current-users@netbsd.org>
From: Sean Doran <smd@ebone.net>
List: current-users
Date: 09/19/1999 22:38:05
Hi -

  When trying to make ramdiskbin in /usr/src/distrib/floppies/ramdisk,
this gets executed:

cc -static -o ramdiskbin ramdiskbin.o bad144.cro cat.cro chmod.cro
chown.cro chroot.cro cp.cro dd.cro df.cro disklabel.cro ed.cro
fsck.cro fsck_ffs.cro ftp.cro gzip.cro ifconfig.cro wiconfig.cro
init.cro installboot.cro less.cro ln.cro ls.cro mkdir.cro mknod.cro
mount.cro mount_cd9660.cro mount_ext2fs.cro mount_ffs.cro
mount_msdos.cro mount_ntfs.cro mount_nfs.cro mount_kernfs.cro mt.cro
mv.cro newfs.cro ping.cro pwd.cro rcmd.cro reboot.cro restore.cro
rm.cro route.cro sed.cro sh.cro shutdown.cro slattach.cro stty.cro
swapctl.cro sync.cro test.cro tip.cro umount.cro update.cro
sysinst.cro pax.cro fdisk.cro mbrlabel.cro -L/usr/lib  libhack.o
-lbz2 -ledit -lutil -lcurses -ltermcap -lrmt -lipsec -lcrypt -ll
-lm

producing this error:

/usr/lib/libc.a(yplib.o): In function `_yp_dobind':
yplib.o(.text+0x0): multiple definition of `_yp_dobind'
libhack.o(.text+0x13d0): first defined here
/usr/bin/ld: Warning: size of symbol `_yp_dobind' changed from 10 to 1429 
in yplib.o
/usr/lib/libc.a(yplib.o): In function `_yp_check':
yplib.o(.text+0x5c4): multiple definition of `_yp_check'
libhack.o(.text+0x1538): first defined here
/usr/bin/ld: Warning: size of symbol `_yp_check' changed from 74 to 115 in 
yplib.o
collect2: ld returned 1 exit status

How do I work around this?

	Sean.