cpp.info: Environment Variables
Go forward to GNU Free Documentation License
Go backward to Invocation
Go up to Top
Go to the top op cpp
This section describes the environment variables that affect how CPP
operates. You can use them to specify directories or prefixes to use
when searching for include files, or to control dependency output.
Note that you can also specify places to search using options such as
`-I', and control dependency output with options like `-M' (*note
Invocation::). These take precedence over environment variables, which
in turn take precedence over the configuration of GCC.
Each variable's value is a list of directories separated by a
special character, much like `PATH', in which to look for header
files. The special character, `PATH_SEPARATOR', is
target-dependent and determined at GCC build time. For
Windows-based targets it is a semicolon, and for almost all other
targets it is a colon.
`CPATH' specifies a list of directories to be searched as if
specified with `-I', but after any paths given with `-I' options
on the command line. The environment variable is used regardless
of which language is being preprocessed.
The remaining environment variables apply only when preprocessing
the particular language indicated. Each specifies a list of
directories to be searched as if specified with `-isystem', but
after any paths given with `-isystem' options on the command line.
See also *Note Search Path::.
If this variable is set, its value specifies how to output
dependencies for Make based on the non-system header files
processed by the compiler. System header files are ignored in the
The value of `DEPENDENCIES_OUTPUT' can be just a file name, in
which case the Make rules are written to that file, guessing the
target name from the source file name. Or the value can have the
form `FILE TARGET', in which case the rules are written to file
FILE using TARGET as the target name.
In other words, this environment variable is equivalent to
combining the options `-MM' and `-MF' (*note Invocation::), with
an optional `-MT' switch too.
This variable is the same as the environment variable
`DEPENDENCIES_OUTPUT' (*note DEPENDENCIES_OUTPUT::), except that
system header files are not ignored, so it implies `-M' rather
than `-MM'. However, the dependence on the main input file is
omitted. *Note Invocation::.
Created Mon Nov 8 17:42:12 2004 on tillpc with info_to_html version 0.9.6.