CC(1) (Software Generation System Utilities) CC(1)
NAME
cc - C compiler
SYNOPSIS
cc [ options ] ... files
DESCRIPTION
The cc command is the C compiler. It generates assembly
instructions. The following types of arguments are accepted
by cc.
Arguments whose names end with .c are taken to be C source
programs; they are compiled and each object program is left
on the file whose name is that of the source with .o
substituted for .c. The .o file is normally deleted if a
single C program is compiled and loaded all at one time. In
the same way, arguments whose names end with .s are taken to
be assembly source programs and are assembled to produce a
.o file.
The following flags are interpreted by cc. See ld(1) for
link editor options and as(1) for assembler options.
-B string
Construct pathnames for substitute preprocessor,
compiler, assembler, and link editor passes by
concatenating string with the suffixes cpp, comp,
reorder, as, and ld. If string is empty, it is taken to
be /lib for all programs except as and ld, for which it
is /bin.
-c Suppress the link-editing phase of the compilation, and
force an object file to be produced.
-D symbol
Define symbol to the preprocessor. This mechanism is
useful with the conditional statements in the
preprocessor by allowing symbols to be defined external
to the source file.
Page 1 May 1989
CC(1) (Software Generation System Utilities) CC(1)
-E Run only cpp(1) on the named C programs, and send the
result to the standard output.
-I dir
Change the algorithm for searching for #include files
whose names do not begin with / to look in dir before
looking in the directories on the standard list. Thus,
#include files whose names are enclosed in double
quotes are searched for first in the directory of the
file argument, then in directories named in -I options,
and last in directories on a standard list. For
#include files whose names are enclosed in <>, the
directory of the file argument is not searched.
-O Invoke the object code optimizer.
-P Run only cpp(1) on the named C programs, and leave the
result in corresponding files suffixed .i.
-S Compile the named C programs and leave the assembler-
language output in corresponding files suffixed .s.
-U symbol
Undefine symbol to the preprocessor.
-Wc,arg1[,arg2...]
Hand off the argument[s] argi to pass c, where c is one
of [p02al] indicating preprocessor, compiler, reorder,
assembler, or link editor, respectively. For example:
-Wa,-m invokes the m4(1) macro preprocessor on the
input to the assembler. This must be done for a source
file that contains assembler escapes.
-Y[p02alSILU],dirname
Specify a new pathname, dirname, for the locations of
the tools and directories designated by the first
argument. [p02alSILU] represents:
p preprocessor (cpp)
Page 2 May 1989
CC(1) (Software Generation System Utilities) CC(1)
0 compiler (comp)
2 optimizer (reorder)
a assembler (as)
l linker (ld)
S directory that contains the startup routines
I default directory search by cpp(1)
L first default library searched by ld(1)
U second default library searched by ld(1)
FILES
file.c input file
file.o object file
file.s assembly language file
a.out link-edited file
/usr/tmp/m88? temporary
LIBDIR/cpp preprocessor
LIBDIR/comp compiler pass 1
LIBDIR/reorder object code reorder
BINDIR/cc compiler driver
BINDIR/as assembler
BINDIR/ld link editor LIBDIR/libc.a runtime
library
SEE ALSO
as(1).
ld(1).
"The C Programming Language" by B.W. Kernighan and D. M.
Ritchie, Prentice-Hall, 1978.
"Programming in C - A Tutorial" by B. W. Kernighan.
"C Reference Manual" by D. M. Ritchie.
"The C Programming Language" in the Software Generation
System Guide.
DIAGNOSTICS
The diagnostics produced by the C compiler are sometimes
cryptic. Occasional messages may be produced by the
assembler or link editor.
Page 3 May 1989