![]() |
Options for the idlc command are preceeded with a dash (-) character and can be specified individually or run together. For example, -p -v -V or -pvV are acceptable.
Some options accept an argument. Where several options have the same argument, these options can also be specified individually or run together. For example, -p -m tie or -pm tieare acceptable.
The space between the option and its argument is optional. For example, either -mtie or -m tieare acceptable.
All options are case-sensitive, even on platforms where filenames are not case-sensitive.
The following table describes each available option:
idlc command options
Option Description -d directory-name Specifies the directory in which to place emitted output files and directories. If none is specified, the default is the current directory. -V Shows the version number of the idlc command. -v Specifies verbose mode. This shows all internal commands (and their arguments) issued by the idlc command. -? (or -h) Writes a brief description of the idlc command syntax to standard output. -D define-expression Predefines a preprocessor variable for the IDL compiler. -I include-directory Adds a directory to the list of directories used by the IDL compiler to find #include files. In addition to the -I option, the IDLC_INCLUDE environment variable can be used to specify a list, with include-directory names separated by the PATH separator character. -i file-name Specifies the name of a file to be compiled that does not have the .idl extension. The file-name should not have an implicit .idl suffix added to its name. -p Used as a shorthand for -D__PRIVATE__. -e (or -s) emit-list Specifies a list of emitters to run. Emitters generate output files that contain language-specific usage and implementation bindings appropriate to each named input file. The rules used to generate the names of these output files are described in the following topics:Each emitter in the list is separated from the others by a colon (:) or semicolon (;) character. Valid emitter names are:
- hh
- Produces C++ usage bindings. If no modifiers are present, bindings with support for remotable cross-language operation are produced. The cpponly, localonly, and somthis modifiers cause specialized bindings to be produced (see -mname[=value]).
- sc
- Produces a C++ skeleton for the basic object adapter of the ORB. If no modifiers are present, bindings with support for remotable cross-language operation are produced. The cpponly, localonly, and somthis modifiers cause specialized bindings to be produced (see -mname[=value]).
- uc
- Produces local implementations needed by the C++ usage bindings. If no modifiers are present, bindings with support for remotable cross-language operation are produced. The cpponly, localonly, and somthis modifiers cause specialized bindings to be produced (see -mname[=value]).
- ih
- Produces a C++ implementation header.
- ic
- Produces a template file for the C++ managed object implementation code.
- ir
- Updates the CORBA Interface Repository with the interfaces in this compilation unit.
-m name[=value] Specifies an output modifier. A modifier can be given as a name or a name=value expression. The emitters are sensitive to the following modifiers:
- LINKAGE=value
- Used to insert customized C++ linkage modifiers into the generated bindings.
- notcconsts
- Eliminates the generation of C++ TypeCode constants and overloaded any operators.
- tie
- Generates "tie-style" bindings that assume delegation rather than inheritance.
- cpponly
- Suppresses the production of cross-language bindings and produces standard CORBA C++ bindings suiitable for use with a standalone ORB. cpponly affects the bindings produced by the hh, sc, and uc emitters.
- localonly
- Generates bindings that can only be used to access a local object for all of the most-derived interfaces in the IDL file.
- orbadaptor
- Generates C++ bindings that allow the C++ ORB to dispatch Java implementations.
- IRforce
- Forces the interface repository (IR) emitter to destroy objects already present in the IR with the same name as in the IDL being produced.
- dllname=value
- Puts Windows NT import or export, or both, specifications into classes contained in the DLL named by value.
- preInclude=file-name
- Adds the line:
#include file-nameto the .hh file, just before the line that includes corba.h.- postInclude=file-name
- Adds the line:
#include file-namejust before the end of the .hh file.-J Passes options through to the Java interpreter used internally. For example: -J"-mx32m"sets the heap size for the interpreter to 32M.
Related tasks... | |
Creating IDL files for an enterprise bean | |
Related concepts... | |
Interface Definition Language (IDL), usage and implementation | |
Related reference... | |
Interface Definition Language (IDL) | |
Parent: The idlc command (IDL compiler) | |
The idlc command: Emitted C++ filenames | |