Subject: Problems compiling elm
To: NetBSD-help <netbsd-help@NetBSD.ORG>
From: Dave Millen <dmill@globalnet.co.uk>
List: netbsd-help
Date: 07/17/1998 23:57:42
Hi,
When attempting to make elm, the following error messages are displayed:
> cd melib; /usr/bin/make - all
> cc -I../hdrs -O -c parse_util.c
> In file included from ../hdrs/defs.h:585,
> from ../hdrs/headers.h:93,
> from parse_util.c:1:
> /usr/include/unistd.h:254: syntax error before `ualarm'
> /usr/include/unistd.h:254: warning: parameter names (without types) in function declaration
> /usr/include/unistd.h:254: warning: data definition has no type or storage class
> /usr/include/unistd.h:255: warning: parameter names (without types) in function declaration
> *** Error code 1
>
> Stop.
>
looking at the souce to unistd.h reveals this:
> /* XXX prototype wrong! */
> int setpgrp __P((pid_t pid, pid_t pgrp)); /* obsoleted by setpgid() */
> int setregid __P((gid_t, gid_t));
> int setreuid __P((uid_t, uid_t));
> void swab __P((const void *, void *, size_t));
> int symlink __P((const char *, const char *));
> void sync __P((void));
> int truncate __P((const char *, off_t));
These next two lines are the offenders
> useconds_t ualarm __P((useconds_t, useconds_t));
> int usleep __P((useconds_t));
commenting out the above two lines allows the make to run until much later when
it fails on something connected with the next few lines(I think):
> #ifdef __LIBC12_SOURCE__
> pid_t vfork __P((void));
> pid_t __vfork14 __P((void));
> #else
> pid_t vfork __P((void)) __RENAME(__vfork14);
> #endif
This is how it fails:
> syscall.o: Undefined symbol `___vfork14' referenced from text segment
> can_access.o: Undefined symbol `___vfork14' referenced from text segment
> can_open.o: Undefined symbol `___vfork14' referenced from text segment
> dispaddr.o: Undefined symbol `_addr_matches_user' referenced from text segment
> tail_of.o: Undefined symbol `_addr_matches_user' referenced from text segment
> tail_of.o: Undefined symbol `_addr_matches_user' referenced from text segment
> *** Error code 1
>
> Stop.
>
What is missing or incorrect on my system? Do I have an incorrect unistd.h? I
have supped all the -current sources and built a kernel using them which works
fine apart from some problems with the shutdown procedure and silo overflows on
com0, but they are probably an arm32 specific problem.
The Makefile in pkgsrc/mail/elm appears to apply all the NetBSD patches ok.
Any help would be appreciated ;~)
cheers,
Dave
--
Customer: "I'm running Windows 95 and Internet Explorer 4."
Tech Support: "Y-e-e-e-e-s........"
Customer: "My Computer isn't working now."
Tech Support: "Yes, you just said that."
e-mail: dmill@globalnet.co.uk
net: http://www.largesalad.co.uk