(gcc.info)Invoking GCC


Next: Installation Prev: G++ and GCC Up: Top

GNU CC Command Options
**********************

   When you invoke GNU CC, it normally does preprocessing, compilation,
assembly and linking.  The "overall options" allow you to stop this
process at an intermediate stage.  For example, the `-c' option says
not to run the linker.  Then the output consists of object files output
by the assembler.

   Other options are passed on to one stage of processing.  Some options
control the preprocessor and others the compiler itself.  Yet other
options control the assembler and linker; most of these are not
documented here, since you rarely need to use any of them.

   Most of the command line options that you can use with GNU CC are
useful for C programs; when an option is only useful with another
language (usually C++), the explanation says so explicitly.  If the
description for a particular option does not mention a source language,
you can use that option with all supported languages.

   Note: Compiling C++ Programs, for a summary of special
options for compiling C++ programs.

   The `gcc' program accepts options and file names as operands.  Many
options have multiletter names; therefore multiple single-letter options
may *not* be grouped: `-dr' is very different from `-d -r'.

   You can mix options and other arguments.  For the most part, the
order you use doesn't matter.  Order does matter when you use several
options of the same kind; for example, if you specify `-L' more than
once, the directories are searched in the order specified.

   Many options have long names starting with `-f' or with `-W'--for
example, `-fforce-mem', `-fstrength-reduce', `-Wformat' and so on.
Most of these have both positive and negative forms; the negative form
of `-ffoo' would be `-fno-foo'.  This manual documents only one of
these two forms, whichever one is not the default.

* Option Summary
Brief list of all options, without explanations.
* Overall Options
Controlling the kind of output: an executable, object files, assembler files, or preprocessed source.
* Invoking G++
Compiling C++ programs.
* C Dialect Options
Controlling the variant of C language compiled.
* C++ Dialect Options
Variations on C++.
* Warning Options
How picky should the compiler be?
* Debugging Options
Symbol tables, measurements, and debugging dumps.
* Optimize Options
How much optimization?
* Preprocessor Options
Controlling header files and macro definitions. Also, getting dependency information for Make.
* Assembler Options
Passing options to the assembler.
* Link Options
Specifying libraries and so on.
* Directory Options
Where to find header files and libraries. Where to find the compiler executable files.
* Target Options
Running a cross-compiler, or an old version of GNU CC.
* Submodel Options
Specifying minor hardware or convention variations, such as 68010 vs 68020.
* Code Gen Options
Specifying conventions for function calls, data layout and register usage.
* Environment Variables
Env vars that affect GNU CC.
* Running Protoize
Automatically adding or removing function prototypes.

automatically generated by info2www