V8/usr/man/man9/3cc.9
.TH 3CC 9.1
.SH NAME
3cc, 3as, 3ar, 3nm, 3size, 3strip, cprs \- MAC-32 C compiler for 5620
.SH SYNOPSIS
.B 3cc
[ option ] ... file ...
.PP
.B cprs
infile outfile
.SH DESCRIPTION
.I 3cc
is the C compiler for the MAC-32 microprocessor in the
Teletype DMD-5620 terminal.
Its default action is to compile programs to run under the
.IR mux (9.1)
environment.
.PP
The behavior of
.I 3cc
is similar to
.IR cc (1);
here are listed only the capabilities peculiar to 5620s.
.PP
The following 5620-specific options are interpreted by
.IR 3cc .
.TP
.SM
.B \-J
Compile the named programs, and link them for running stand-alone
on a 5620 terminal.
.TP
.B \-m
Compile the named programs for ordinary (non-jerq) environments.
.TP
.SM
.B \-O
Invoke an
object-code improver (not recommended).
.TP
.SM
.BI \-D name=def
.br
.ns
.TP
.SM
.BI \-D \*Sname
Define the
.I name
to the preprocessor,
as if by
`#define'.
If no definition is given, the name is defined as "1".
The symbol
.I MUX
is predefined unless
.B \-J
or
.B \-m
is set.
.TP
.SM
.BI \-I \*Sdir
`#include' files
whose names do not begin with `/' are always
sought first in the directory
of the
.I file
argument,
then in directories named in
.B \-I
options,
then in directories on a standard list, which includes
.IR /usr/jerq/include .
.PP
Associated object-code manipulating programs exist,
with specifications identical to the usual Unix programs with
names prefixed `3'.
The loader, assembler and archive program are System V
derivatives, and are slightly different in behavior;
see the System V manuals.
For typical users, these differences are irrelevant.
The support programs include:
.TP "\w'mlorder 'u"
.I 3as
assembler, see
.IR as (1)
.PD 0
.TP
.I 3ar
archive, see
.IR ar (1)
(there is no 3ranlib)
.TP
.I 3nm
name list, see
.IR nm (1);
doesn't work on archives
.TP
.I 3size
object code size, see
.IR size (1)
.TP
.I 3strip
symbol table, see
.IR strip (1).
.RB ( \-r
is mandatory for
.IR mux -runnable
binaries.)
.PD
.PP
.I 3strip
has no
.B \-g
flag; but
.I cprs
removes redundant symbol table entries while
copying
.I infile
to
.IR outfile .
.SH FILES
.nf
.ta \w'/usr/jerq/lib/m32/optim 'u
a.out loaded output
/tmp/ctm? temporary
/lib/cpp preprocessor
/usr/jerq/lib/m32/comp compiler
/usr/jerq/lib/m32/optim optimizer
/usr/jerq/lib/*.o runtime startoff, etc.
/usr/jerq/lib/libc.a standard library
/usr/jerq/lib/libj.a stand-alone graphics library
/usr/jerq/lib/libmj.a mux-runnable graphics library (default)
/usr/jerq/lib/muxmap loader I-file
/usr/jerq/include standard directory for `#include' files
.fi
.SH "SEE ALSO"
System V manuals for 3ar, 3ld, 3as and cprs documentation.