Annotation of researchv10dc/630/man/src/u_man/man1/dmdcc.1, revision 1.1.1.1

1.1       root        1: .TH DMDCC 1 "630 MTG"
                      2: .SH NAME
                      3: dmdcc \- 630 MTG C compiler
                      4: .SH SYNOPSIS
                      5: \f3dmdcc [\f1 options \f3]\f1 file ...
                      6: .SH DESCRIPTION
                      7: The
                      8: .I dmdcc
                      9: command is the 630 MTG C compiler. Any software to be downloaded
                     10: into the 630 MTG must be compiled using this command.
                     11: .PP
                     12: \fIDmdcc\fR works in a similar manner to
                     13: other compiler (cc) commands but is enhanced to call
                     14: \fImc68cpp\fR and \fImc68ld\fR
                     15: with special arguments for the 630 MTG development environment.
                     16: In particular,
                     17: the \fIdmdcc\fR command defines the variable \fBDMD630\fR,
                     18: it sets the include search path
                     19: to $DMD/include, it sets the library search path to $DMD/lib,
                     20: it includes the standard 630 MTG libraries, it links in the 630
                     21: MTG C
                     22: run-time start-up routine crtm.o, and it tells \fImc68ld\fR
                     23: to retain relocation information so the
                     24: resulting executable file can be relocated before download into the
                     25: 630 MTG.
                     26: .PP
                     27: The exact arguments passed to \fImc68cpp\fR and \fImc68ld\fR
                     28: can be viewed by including the \fI-#\fR debugging argument on the
                     29: \fIdmdcc\fR command line.
                     30: .PP
                     31: The
                     32: \fIdmdcc\fR utility
                     33: accepts three types of arguments:
                     34: .RS 8
                     35: .B .c
                     36: .br
                     37: .B .s
                     38: .br
                     39: .B .o
                     40: .RE
                     41: .PP
                     42: Arguments whose names end with
                     43: .B .c
                     44: are the C source programs, and those with
                     45: .B .s
                     46: are the assembly programs.
                     47: They are compiled/assembled, and
                     48: each object program 
                     49: whose name is that of the source with
                     50: .B .o
                     51: substituted
                     52: .RB "for " .c " or " .s
                     53: is left in the file.
                     54: The
                     55: .B .o
                     56: file is normally deleted if a single
                     57: C program is compiled and link-edited all at one time.
                     58: .PP
                     59: The following flags are interpreted by
                     60: .I dmdcc\c
                     61: \&.
                     62: See
                     63: .IR mc68cpp (1),
                     64: .IR mc68as (1)
                     65: and
                     66: .IR mc68ld (1)
                     67: for other useful flags.
                     68: .PP
                     69: .TP 6
                     70: \fB\-c\fR
                     71: Suppress the link-editing phase of the compilation, and force
                     72: an object file to be produced even if only one program is compiled.
                     73: .PP
                     74: .TP 6
                     75: \fB\-g\fR
                     76: Flag to the compiler to produce additional information needed for the
                     77: use of
                     78: .IR dmdpi (1).
                     79: \}
                     80: .PP
                     81: .TP 6
                     82: \fB\-O\fR
                     83: Invoke an object-code optimizer.
                     84: The optimizer will move, merge, and delete code; this option should not be
                     85: used if it is expected that compiled code may be debugged with \fIdmdpi\fR(1).
                     86: .PP
                     87: .TP 6
                     88: \fB\-W\fIc\fB,\fRarg1[\fB,\fRarg2...]
                     89: Hand off the argument[s]
                     90: to pass
                     91: .I c
                     92: where
                     93: .I c
                     94: is one of
                     95: .RB [ p02al ]
                     96: indicating preprocessor,
                     97: compiler,
                     98: optimizer,
                     99: assembler,
                    100: or link editor, respectively. For example:
                    101: .RS 6
                    102: .ce
                    103: .B \-Wa,\-m
                    104: .br
                    105: invokes the \f2m4\f1 macro preprocessor on the input to the assembler.
                    106: .RE
                    107: .PP
                    108: .TP 6
                    109: \fB\-S\fR
                    110: Compile the named C programs, and leave the
                    111: assembler-language output on corresponding files suffixed
                    112: .BR .s .
                    113: .PP
                    114: .TP 6
                    115: \fB\-P\fR
                    116: Run only the macro preprocessor
                    117: on the named C programs, and leave the output on corresponding
                    118: files suffixed
                    119: .BR .i .
                    120: .TP 6
                    121: \fB\-E\fR
                    122: Same as the
                    123: .B \-P
                    124: option except the output is directed to the standard output.
                    125: This allows the preprocessor to be used as a filter for
                    126: any other compiler.
                    127: .PP
                    128: .TP 6
                    129: \fB\-#\fR
                    130: Debug flag. Show the command lines passed to \fImc68cpp\fR,
                    131: \fImc68ccom\fR, \fImc68as\fR and \fImc68ld\fR.
                    132: .PP
                    133: .TP 6
                    134: \fB\-x\fR
                    135: Turn off special processing for the 630 MTG environment. This argument should
                    136: not be used when compiling programs to be downloaded into the 630
                    137: MTG.
                    138: .PP
                    139: .TP 6
                    140: \f3\-Z\f1 \f2n\f1
                    141: Allocate \f2n\f1 bytes of stack for process. If not specified the
                    142: default is 2048, Note that stack size can be overridden at
                    143: download time with the \f2dmdld -Z\f1 option. If \f2n\f1 is
                    144: specified smaller than 2048, it is defaulted to 2048.
                    145: .PP
                    146: .DT
                    147: .br
                    148: .DT
                    149: .PP
                    150: Other arguments
                    151: are taken
                    152: to be either C preprocessor or link-editor flag arguments, or C-compatible
                    153: object programs, typically produced by an earlier
                    154: .I dmdcc
                    155: run,
                    156: or perhaps libraries of C-compatible routines.
                    157: These programs, together with the results of any
                    158: compilations specified, are link-edited (in the order
                    159: given) to produce an executable program with name
                    160: .B dmda.out
                    161: unless the
                    162: .B \-o
                    163: option of the link-editor is used.
                    164: .PP
                    165: The
                    166: .I dmdcc
                    167: command expects the \fBDMD\fR shell variable to be set and exported in
                    168: the user's environment.
                    169: This variable must point to the "root" directory of the 630 MTG software
                    170: node.
                    171: .PP
                    172: \fIDmdcc\fR tags the downloadable ouput file with a
                    173: programming envirionment identification number (PEID) which is
                    174: used by \fIdmdld\fR prior to download to verify copatibility
                    175: with terminal firmware. The PEID is determined by \fIdmdcc\fR
                    176: from the firmware routine linkages included in the process.
                    177: Every firmware routine called by the process causes a linkage
                    178: to the routine to be retrieved from archive and included in
                    179: the load module. Each of these linkage routines is tagged with
                    180: a PEID related to the firmware version that supports the
                    181: called firmware routine. The PEID associated with the latest
                    182: level of firmware required to support those linkages retrieved
                    183: from archive is tagged to the load module. Compatibility with
                    184: earlier firmware releases is maintained as long as new
                    185: firmware functions not supported by older firmware are not used
                    186: in the program.
                    187: .SH FILES
                    188: .PD 0
                    189: .TP 22
                    190: file.c
                    191: input file
                    192: .TP 22
                    193: file.o
                    194: object file
                    195: .TP 22
                    196: file.s
                    197: assembly language file
                    198: .TP 22
                    199: dmda.out
                    200: link-edited output
                    201: .TP 22
                    202: /usr/tmp/mc68?
                    203: temporary file
                    204: .TP 22
                    205: $DMD/lib/mc68cpp
                    206: preprocessor
                    207: .TP 22
                    208: $DMD/lib/mc68ccom
                    209: compiler
                    210: .TP 22
                    211: $DMD/lib/mc68optim
                    212: optimizer
                    213: .TP 22
                    214: $DMD/bin/mc68as
                    215: assembler
                    216: .TP 22
                    217: $DMD/bin/mc68ld
                    218: link loader
                    219: .DT
                    220: .PD
                    221: .br
                    222: .SH SEE ALSO
                    223: dmdpi(1),
                    224: mc68as(1),
                    225: mc68cpp(1),
                    226: mc68ld(1).
                    227: .br
                    228: m4(1) in the
                    229: \f2UNIX System V Programmer's Reference Manual\f1.
                    230: .br
                    231: .sp
                    232: .IR "The C Programming Language",
                    233: by Kernighan, B. W., and Ritchie, D. M.,
                    234: Prentice-Hall, 1978.
                    235: .br
                    236: .I Programming in C\-A Tutorial
                    237: by Kernighan, B. W.
                    238: .br
                    239: .I C Reference Manual
                    240: by Ritchie, D. M.
                    241: .br
                    242: .br
                    243: .SH DIAGNOSTICS
                    244: The diagnostics produced by the C compiler are sometimes
                    245: cryptic.
                    246: Occasional messages may be produced by the assembler
                    247: or link-editor.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.