Subject: Compiling apout pdp-11 simulator
To: None <current-users@netbsd.org>
From: Thomas Miller <tmiller@flex.com>
List: current-users
Date: 06/29/2003 23:28:37
Hi,
I am trying to compile apout2.3alpha2 on NetBSD-current 1.6T
as of about June 8, 2003.
apout2.3alpha2, if I understand correctly, translates the system
calls from pdp11 executables from certain older Research and BSD
unix flavors into NetBSD system calls. See
http://ftp.lug.udel.edu/pub/oldunix/PDP-11/Emulators/Apout/README/
apout2.3alpha2 has a file called bsd_signal.c which contains
the following lines to which I have prepended the line numbers:
52 /*
53 * Signal vector "template" used in sigaction call.
54 */
55
56 struct bsd_sigaction {
57 int16_t sa_handler; /* signal handler */
58 u_int32_t sa_mask; /* signal mask to apply */
59 int16_t sa_flags; /* see signal options below */
60 };
Here is the gcc command that "make" issues and also some
messages from gcc:
aluminum: {2} make
gcc -DNATIVES -DINLINE=inline -O3 -Winline -Wall -finline-functions
-fomit-frame-pointer -c bsd_signal.c
bsd_signal.c:57: warning: no semicolon at end of struct or union
bsd_signal.c:57: parse error before `.'
bsd_signal.c:60: parse error before `}'
bsd_signal.c: In function `set_bsdsig_dfl':
bsd_signal.c:91: invalid use of undefined type `struct bsd_sigaction'
bsd_signal.c:92: invalid use of undefined type `struct bsd_sigaction'
bsd_signal.c:92: invalid use of undefined type `struct bsd_sigaction'
bsd_signal.c: In function `do_sigaction':
bsd_signal.c:106: invalid use of undefined type `struct bsd_sigaction'
bsd_signal.c:106: sizeof applied to an incomplete type
bsd_signal.c:116: dereferencing pointer to incomplete type
bsd_signal.c:120: dereferencing pointer to incomplete type
bsd_signal.c:129: invalid use of undefined type `struct bsd_sigaction'
bsd_signal.c:129: sizeof applied to an incomplete type
bsd_signal.c: At top level:
bsd_signal.c:81: storage size of `Sigact' isn't known
*** Error code 1
Stop.
Would someone please be kind enough to answer the following
questions:
1) There _is_ a ";" in line 57, and "end of struct" would seem to refer
to line 60, which also has a ";". Is there _really_ supposed to be
another ";", and, if so, where should the additional ";" be placed?
2) There is no "." in line 57, so how can there be a parse error before
something that isn't there?
3) What should I do so that the compilation will proceed past line 57
and avoid the problems in later lines that refer back to struct
bsd_sigaction?
Thanks!
Tom