Subject: Multiple make build problems
To: None <current-users@netbsd.org>
From: Ken Cross <kcross@ntown.com>
List: current-users
Date: 08/30/2001 15:16:02
I've been trying for 2 days to 'make build' the -current code.  I started
with a clean disk and cvs'd the sources.  I followed all the instructions in
UPDATING, although I'm not sure what this means:

  get/setprogname() added. Any hostprog's that may use this will need
  to be bootstrapped manually until the host system is current.

Anyhow, that's the first problem I hit:

cc -O -I. -I/usr/src/lib/libcom_err/compile_et/../../../include/heimdal
  ...
compile_et.lo: In function `main':
compile_et.lo(.text+0x404): undefined reference to `setprogname'
warnerr.lo: In function `set_progname':
warnerr.lo(.text+0x13): undefined reference to `setprogname'
collect2: ld returned 1 exit status

*** Error code 1


I tried going back to the Wasabi 1.5 distribution and did 'make build' and
then tried to re-build -current again -- same results.  I also tried loading
1.5.1 binaries and re-building -- ditto.  (Will 1.5.2 binaries be available
soon?  They're inaccessible on ftp.netbsd.org now.)

setprogname is in the libc sources -- I tried building just libc and hit the
LINT problem.  So then I tried building the tools (MKTOOLS=yes) and got:

  cc -O -include /usr/src/tools/yacc/../compat/compat_netbsd.h -Wall -o yacc
  closure.lo error.lo lalr.lo lr0.lo main.lo mkpar.lo
  output.lo reader.lo skeleton.lo symtab.lo verbose.lo warshall.lo
  nb_progname.lo
  lalr.lo: In function `map_goto':
  lalr.lo(.text+0x4c1): undefined reference to `__assert13'

OK, it needs yacc.  I copied /usr/bin/yacc and got past that. Then, when
making toolchain, I got:

  prdbg.o: In function `prepend_type':
  prdbg.o(.text+0x113): undefined reference to `__assert13'


<sigh>

FWIW, here's my current /etc/mk.conf:

  OBJMACHINE=true
  MKOBJDIRS=yes
  MKTOOLS=yes
  __TOOLARCH!=uname -m
  TOOLDIR=/usr/obj/tools/obj.$(__TOOLARCH)
  USE_NEW_TOOLCHAIN=yes

It's gotta be easier than this.  Please tell me I'm doing something stupidly
obvious.

Thanks,
Ken