scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | README | 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.