---
name: "orbit-idl-2"
section: "1"
platform: "linux"
package: "orbit2"
version: "1:2.14.19-2+b1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/orbit-idl-2"
---

# orbit-idl-2(1)

IDL compiler for ORBit2

## NAME

orbit-idl-2 - IDL compiler for ORBit2

## SYNOPSIS

**orbit-idl-2** \[ *options* \] *file...*

## DESCRIPTION

**orbit-idl-2** converts object interface descriptions written in CORBA IDL (Interface Definition Language) into C code that you can compile and link into your programs.

## OPTIONS

**orbit-idl-2** accepts the following options:

- **-d** *ARG*

  **--debug=***ARG*

  Set the debug level.  Supported levels are 0 to 4, default is 2.

  - **--idlwarnlevel=***INT*

    Set the warning level for compiler warnings.  Supported levels are 0 to 4, default is 2.

  - **--showcpperrors**

    Show errors from [cpp(1)](/cpp/1.md).

  - **--small**

    Optimize for size instead of speed.

  - **--oldstyle**

    Use the old style IDL compiler (not generally recommended).

  - **--skeleton-impl**

    Generate a *skeleton-impl* file.

  - **--nostubs**

    Do not create the *stubs* file.

  - **--noskels**

    Do not create the *skels* file.

  - **--nocommon**

    Do not create the *common* file.

  - **--noheaders**

    Do not create the *headers* file.

  - **--noidata**

    Don't generate Interface type data.

  **-i**

  **--imodule**

  Generate only an imodule file (no skels, stubs, etc.).

  - **--add-imodule**

    Generate an imodule file (as well as other files generated by default or by other options).

  - **--onlytop**

    Inhibit file includes.

  - **--pidl**

    Treat source as pseudo-IDL.

  **-D** *ARG*

  **--define=***ARG*

  Define name for preprocessor.

  **-I** *PATH*

  **--include=***PATH*

  Add search path for include files.

  - **--deps=***FILENAME*

    Generate dependency information, suitable for inclusion in a Makefile.

  **-l** *ARG*

  **--lang=***ARG*

  Specify the output language.  The default is C.  Support for languages other than C requires the installation of a backend for that language.

  - **--backenddir=***DIR*

    Specify the directory where a language backend is stored (not necessary if backend is stored in the default directory).

  - **--usage**

    Print a very brief usage summary.

  **-?**

  **--help**

  Print a slightly more detailed usage summary.

  **-v**

  **--version**

  Print version number and serial.

## COMPILING

The IDL file(s) compiled by **orbit-idl-2** define the interfaces to network-transparent objects.  These files are first passed to [cpp(1)](/cpp/1.md), the C Preprocessor, then the result is parsed, and the C code is generated.

 By default, **orbit-idl-2** generates four files, the *stubs*, *skels*, *common*, and *header* files.  If your input file is named **sample.idl**, then the output files will be named, respectively, **sample-stubs.c**, **sample-skels.c**, **sample-common.c**, and **sample.h**.  You can optionally also generate a *skeleton-impl* file (which would be named **sample-skelimpl.c** in our example), or an *imodule* file (e.g. **sample-imodule.c**).  These files require manual editing to be useful, and is therefore not generated by default.

The generated C files are formatting ("pretty-printed") using [indent(1)](/indent/1.md).  You can use another program for this if you prefer, with the --c-output-formatter argument.

## SEE ALSO

[orbit2-config(1)](/orbit2-config/1.md), [cpp(1)](/cpp/1.md), [indent(1)](/indent/1.md), /usr/share/doc/liborbit2-dev, http://orbit-resource.sourceforge.net, http://www.omg.org.

## AUTHOR

Copyright © 2001, 2002 Dick Porter \<dick@acm.org\> and Elliot Lee \<sopwith@redhat.com\>

This manual was originally written for orbit-idl by Chris Waters \<xtifr@debian.org\> for Debian GNU/Linux.
