|
|
1.1 root 1: .TH PCC 1
2: .SH NAME
3: pcc \- APE C compiler driver
4: .SH SYNOPSIS
5: .B pcc
6: [
7: .I option ...
8: ]
9: [
10: .I name ...
11: ]
12: .SH DESCRIPTION
13: .I Pcc
14: compiles and loads C programs,
15: using APE (ANSI C/POSIX) include files and libraries.
16: Named files ending with
17: .B .c
18: are preprocessed with
19: .IR cpp (1),
20: then compiled with one of the compilers described in
21: .IR 2c (1),
22: as specified by the environment variable
23: .BR $objtype .
24: The object files are then loaded using one of the loaders described in
25: .IR 2l (1).
26: The options are:
27: .TP \w'\fL-D\ \fIname=def\ 'u
28: .BI -o " out"
29: Place loader output in file
30: .I out
31: instead of the default
32: .BR 2.out ,
33: .BR v.out ,
34: etc.
35: .TP
36: .B -P
37: Omit the compilation and loading phases;
38: leave the result of preprocessing
39: .IB name .c
40: in
41: .IB name .i\f1.
42: .TP
43: .B -c
44: Omit the loading phase.
45: .TP
46: .B -p
47: Insert profiling code into the executable output.
48: .TP
49: .B -w
50: Print compiler warning messages.
51: .TP
52: .B -B
53: Don't complain about functions used without
54: ANSI function prototypes.
55: .TP
56: .B -v
57: Echo the preprocessing, compiling, and loading commands
58: before they are executed.
59: .TP
60: .BI -D name=def
61: .br
62: .ns
63: .TP
64: .BI -D name
65: Define the
66: .I name
67: to the preprocessor,
68: as if by
69: .LR #define .
70: If no definition is given, the name is defined as
71: .LR 1 .
72: .TP
73: .BI -U name
74: Undefine the
75: .I name
76: to the preprocessor,
77: as if by
78: .LR #undef .
79: .TP
80: .BI -I dir
81: .L #include
82: files whose names do not begin with
83: .L /
84: are always
85: sought first in the directory
86: of the
87: .I file
88: argument,
89: then in directories named in
90: .B -I
91: options,
92: then in
93: .BR /$objtype/include/ape .
94: .TP
95: .B -N
96: Don't optimize compiled code.
97: .TP
98: .B -S
99: Print an assembly language version of the object code
100: on standard output.
101: .TP
102: .B -a
103: Instead of compiling, print on standard output acid functions (see
104: .IR acid (1))
105: for examining structures declared in the source files.
106: .TP
107: .B -aa
108: Like
109: .B -a
110: except that functions for structures declared in included header files
111: are omitted.
112: .PP
113: The APE environment contains all of the include
114: files and library routines specified in the ANSI C standard
115: (X3.159-1989), as well as those specified in the IEEE Portable
116: Operating System Interface standard (POSIX, 1003.1-1990, ISO 9945-1).
117: In order to access the POSIX routines, source programs should
118: define the preprocessor constant
119: .BR _POSIX_SOURCE .
120: .SH FILES
121: .TF /$objtype/lib/ape/libap.a
122: .TP
123: .B /sys/include/ape
124: directory for machine-independent
125: .B #include
126: files.
127: .TP
128: .B /$objtype/include/ape
129: directory for machine-dependent
130: .B #include
131: files.
132: .TP
133: .B /$objtype/lib/ape/libap.a
134: ANSI C/POSIX library.
135: .SH "SEE ALSO"
136: .IR cpp (1),
137: .IR 2c (1),
138: .IR 2a (1),
139: .IR 2l (1),
140: .IR mk (1),
141: .IR nm (1),
142: .IR acid (1),
143: .IR db (1),
144: .IR prof (1)
145: .PP
146: Howard Trickey,
147: ``APE \(em The ANSI/POSIX Environment''
148: .SH SOURCE
149: .B /sys/src/cmd/pcc.c
150: .SH BUGS
151: The locale manipulation functions are minimal.
152: Signal functions and terminal characteristic
153: handlers are only minimally implemented.
154: .IR Link
155: always fails, because Plan 9 doesn't support multiple links to a file.
156: The functions related to setting effective user and group ids
157: cannot be implemented because the concept doesn't exist in Plan 9.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.