Output Control (GNAT User’s Guide for Native Platforms)

#### 4.5.2.4 Output Control ¶

The following switches allow additional control over the output generated by the binder.

`-c`

  Check only. Do not generate the binder output file. In this mode the binder performs all error checks but does not generate an output file.

`-e`

  Output complete list of elaboration-order dependencies, showing the reason for each dependency. This output can be rather extensive but may be useful in diagnosing problems with elaboration order. The output is written to `stdout`.

`-h`

  Output usage information. The output is written to `stdout`.

`-K`

  Output linker options to `stdout`. Includes library search paths, contents of pragmas Ident and Linker_Options, and libraries added by `gnatbind`.

`-l`

  Output chosen elaboration order. The output is written to `stdout`.

`-O`

  Output full names of all the object files that must be linked to provide the Ada component of the program. The output is written to `stdout`. This list includes the files explicitly supplied and referenced by the user as well as implicitly referenced run-time unit files. The latter are omitted if the corresponding units reside in shared libraries. The directory names for the run-time units depend on the system configuration.

`-o `file'`

  Set name of output file to `file` instead of the normal `b~`mainprog`.adb‘ default. Note that `file` denote the Ada binder generated body filename. Note that if this option is used, then linking must be done manually. It is not possible to use gnatlink in this case, since it cannot locate the binder file.

`-r`

  Generate list of `pragma Restrictions` that could be applied to the current unit. This is useful for code audit purposes, and also may be used to improve code generation in some cases.