scc.1 - scc - simple c99 compiler
(HTM) git clone git://git.simple-cc.org/scc
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
scc.1 (2777B)
---
1 .TH SCC 1 scc\-VERSION
2 .SH NAME
3 scc \- simple C compiler with magic
4 .SH SYNOPSIS
5 .B scc
6 .RB [ \-cdgkqQsWw ]
7 .RB [ \-M | \-E | \-S ]
8 .RB [ \-D
9 .IR def[=val] ] ...
10 .RB [ \-I
11 .IR dir ] ...
12 .RB [ \-L
13 .IR dir ] ...
14 .RB [ \-U
15 .IR def ] ...
16 .RB [ \-l
17 .IR lib ]
18 .RB [ \-m
19 .IR arch ]
20 .RB [ \-o
21 .IR outfile ]
22 .RB [ \-O
23 .IR level ]
24 .RB [ \-t
25 .IR sys ]
26 .RB sourcefile ...
27 .SH DESCRIPTION
28 .B scc
29 is a simple C compiler which takes several
30 .I sourcefiles
31 and compiles them to an executable. The default output file is
32 .B a.out,
33 which can be changed by defining some
34 .I outfile.
35 .SH OPTIONS
36 .TP
37 .B \-c
38 Do not run the linker.
39 .TP
40 .B \-d
41 Do output internal tool messages.
42 .TP
43 .BI \-D " define[=value]"
44 Specify a
45 .I define
46 for the preprocessor.
47 .TP
48 .B \-E
49 Stop after the preprocessing stage, do not run the compiler and output the then
50 resulting source.
51 .TP
52 .B \-g
53 Do generate debug information.
54 .TP
55 .BI \-I " directory"
56 Define a include
57 .I directory
58 to get header files from. This directory is searched for before standard
59 include directories.
60 .TP
61 .B \-k
62 Do keep temporary objects.
63 .TP
64 .BI \-l " library"
65 Link against this
66 .I library.
67 .TP
68 .BI \-L " directory"
69 Define a library
70 .I directory
71 to resolve dependencies from. This directory is used before the standard
72 paths.
73 .TP
74 .BI \-m " architecture"
75 Define the
76 .I architecture
77 to compile for (i.e. amd64, i386 ...).
78 .TP
79 .B \-M
80 Output a rule for
81 .B make
82 describing the dependencies of the main source file.
83 .TP
84 .BI \-o " outfile"
85 Define the name of the
86 .I outfile.
87 .TP
88 .BI \-O " level"
89 Define the optimisation
90 .I level
91 to compile with. (This is a stub for compatibility reasons.)
92 .TP
93 .B \-q
94 Do not use
95 .I QBE.
96 .TP
97 .B \-Q
98 Do use the
99 .I QBE.
100 .TP
101 .B \-s
102 Strip all symbol tables and relocation information from the resulting executable.
103 .TP
104 .B \-S
105 Stop after the compilation stage, do not assemble and output the assembler
106 source.
107 .TP
108 .BI \-t " system"
109 Define the
110 .I system
111 to compile for (i.e. linux, openbsd ...).
112 .TP
113 .BI \-U " define"
114 Undefine a previously defined
115 .I define
116 by the -D parameter.
117 .TP
118 .B \-W
119 Show warning messages.
120 .TP
121 .B \-w
122 Do not show warning messages (default).
123 .SH ENVIRONMENT VARIABLES
124 Certain environment variables control the behaviour of scc.
125 .TP
126 .B ARCH
127 defines the
128 .I architecture
129 to compile for (i.e. amd64, i386 ...).
130 .TP
131 .B SYS
132 defines the
133 .I system
134 to compile for (i.e. linux, openbsd ...).
135 .TP
136 .B ABI
137 defines the
138 .I application binary interface
139 to compile for (i.e. sysv ...).
140 .TP
141 .B FORMAT
142 defines the format of the output executable.
143 .TP
144 .B SCCPREFIX
145 defines the path prefix scc will search the scc suite in.
146 .SH AUTHORS
147 See the LICENSE file for the authors.
148 .SH LICENSE
149 See the LICENSE file for the terms of redistribution.
150 .SH SEE ALSO
151 .BR scpp (1),
152 .BR make (1)
153 .SH BUGS
154 See the TODO file in the distribution.