c991
Standard c language compiler
Usage
c99 [-cEgs]
[-D
name
[=value]] ...
[-I
directory] ...
[-L
directory] ...
[-o
outfile]
[-O
optlevel]
[-U
name] ...
operand ...
Overview
This is the name of the C language compiler as required by the IEEE Std 1003.1-2001 (“POSIX.1”) standard.
The c99 compiler accepts the following options:
-
-c -
Suppress the link-edit phase of the compilation, and do not remove any object files that are produced.
-
-D name[=value] -
Define name as if by a C-language
#definedirective. If no “=value” is given, a value of 1 will be used. Note that in order to request a translation as specified by IEEE Std 1003.1-2001 (“POSIX.1”), you need to define _POSIX_C_SOURCE=200112L either in the source or using this option. The-Doption has lower precedence than the-Uoption. That is, if name is used in both a-Uand a-Doption, name will be undefined regardless of the order of the options. The-Doption may be specified more than once. -
-E -
Copy C-language source files to the standard output, expanding all preprocessor directives; no compilation will be performed.
-
-g -
Produce symbolic information in the object or executable files.
-
-I directory -
Change the algorithm for searching for headers whose names are not absolute pathnames to look in the directory named by the directory pathname before looking in the usual places. Thus, headers whose names are enclosed in double-quotes ("") will be searched for first in the directory of the file with the
#includeline, then in directories named in-Ioptions, and last in the usual places. For headers whose names are enclosed in angle brackets (⟨⟩), the header will be searched for only in directories named in-Ioptions and then in the usual places. Directories named in-Ioptions shall be searched in the order specified. The-Ioption may be specified more than once. -
-L directory -
Change the algorithm of searching for the libraries named in the
-lobjects to look in the directory named by the directory pathname before looking in the usual places. Directories named in-Loptions will be searched in the order specified. The-Loption may be specified more than once. -
-o outfile -
Use the pathname outfile, instead of the default a.out, for the executable file produced.
-
-O optlevel -
If optlevel is zero, disable all optimizations. Otherwise, enable optimizations at the specified level.
-
-s -
Produce object and/or executable files from which symbolic and other information not required for proper execution has been removed (stripped).
-
-U name -
Remove any initial definition of name. The
-Uoption may be specified more than once.
An operand is either in the form of a pathname or the form -l library. At least one operand of the pathname form needs to be specified. Supported operands are of the form:
- file.c
-
A C-language source file to be compiled and optionally linked. The operand must be of this form if the
-coption is used. - file.a
-
A library of object files, as produced by ar(1), passed directly to the link editor.
- file.o
-
An object file produced by
c99-c, and passed directly to the link editor. -
-l library -
Search the library named liblibrary.a. A library will be searched when its name is encountered, so the placement of a
-loperand is significant.
Releases
56 releases since FreeBSD 5.0-RELEASE; the text changed 34 times.