omniORB2.gif (2079 bytes)

omniORB 2.6.0

sideHome.gif (2321 bytes) sideDownload.gif (2450 bytes) sideDocumentation.gif (2512 bytes) sideFAQ.gif (2344 bytes) sidePatch.gif (2543 bytes) sideSearch.gif (2403 bytes)  
This is the version 2.6.0 release of omniORB. We also refer to this version as omniORB2.

The last public release is 2.5.0. The changes since release 2.5.0 are list here.

omniORB2 is copyright AT&T Laboratories Cambridge. It is free software. The programs in omniORB2 are distributed under the GNU General Public Licence as published by the Free Software Foundation. See the file COPYING for copying permission of these programs. The libraries in omniORB2 are distributed under the GNU Library General Public Licence. See the file COPYING.LIB for copying permission of these libraries.

omniORB2 contains source code that is derived from the SunSoft OMG IDL Compiler Front End (CFE) version 1.3. The IDL CFE is copyright Sun Microsystems and is distributed here under the terms and conditions written in the file src/tool/omniidl2/COPYING.CFE.

README files

  • README.win32 - contains important information on building and using omniORB2 on Windows NT and Windows 95.
  • README.unix - contains important information on building and using omniORB2 on Unix platforms.
  • README.openvms - contains important information on building and using omniORB2 on openVMS.
  • README.linux - contains further information on using omniORB2 on linux.
  • README.egcs - contains information on building omniORB2 with egcs-1.0.
  • README.ETSKernel - contains important information on building and using omniORB2 with Phar Lap's ETS kernel.
  • PORTING - contains instructions on porting omniORB2.
  • CHANGES_260 - contains details of changes from 2.5.0 to 2.6.0.
  • CHANGES_250 - contains details of changes from 2.4.0 to 2.5.0.
  • CHANGES_240 - contains details of changes from 2.2.0 to 2.4.0.

Technical Highlights

omniORB2 is an Object Request Broker (ORB) which implements specification 2.0 of the Common Object Request Broker Architecture (CORBA).

  • C++ language bindings are supported. The mapping conforms to the latest revision of the CORBA specification.
  • The Internet Inter-ORB Protocol (IIOP) is used as the native protocol.
  • The omniORB2 runtime is fully multithreaded. It uses native platform thread support encapsulated with a small class library, omnithread, to abstract away from differences in native thread APIs.
  • TypeCode and type Any are supported.
  • DynAny is supported (CORBA 2.2)
  • A COS Naming Service, omniNames, is provided.
  • The following platforms are supported:
    • Solaris 2.{5,6}/ Sun SparcCompiler C++ version 4.2
    • Windows NT / Windows 95 / Visual C++ version 5.0 (and also version 6.0)
    • Linux 2.0 (x86)/ GNU C++ compiler version 2.7.2 /libc-5/Linuxthreads 0.5
    • Linux 2.0 (x86)/egcs-1.1b/binutils- Libc version 2
    • Digital Unix 3.2/ DEC C++ compiler version 5.5
    • Digital Unix 4.0D/ DEC C++ compiler version 6.0

    Ports to the following platforms are available. These ports are done by external contributors and have been inte grated into the source tree. For these platforms, no pre-compiled binary is available.

    • IBM AIX 4.2/ IBM C Set++ 3.1.4
    • HPUX 10.20/ aC++ (B3910 A.01.04)
    • OpenVMS Alpha 6.2/ DEC C++ compiler 5.5 (UCX 4.1 ECO 8)
    • OpenVMS Vax 6.1/ DEC C++ compiler 5.5 (UCX 4.0 ECO 1)
    • NextStep 3.3/ gcc-2.7.2
    • Reliant Unix 5.43/CDS++
    • SCO OpenServer 5/g++
    • Phar Lap's Real Time ETS Kernel
    • SGI Irix 6.x/SGI C++ compiler 7.2

    Ports to LynOS and Mac OS are known to exist but they have not been integrated into the source tree.

    It should be straightforward to port omniORB2 to any platform which supports POSIX style threads, BSD style sockets and has a decent C++ compiler which supports exceptions.

  • It has been tested for interoperability via IIOP with other ORBs, such as Iona Orbix 2.2 MT, Iona OrbixWeb 2.0.1, Visigenic Visibroker for C++, and HP ORB Plus 2.5.

Work in progress

omniORB2 is not yet a complete implementation of the CORBA core. The following features are not supported in the current release.

  • The Dynamic Invocation Interface (DII) is not supported. Work is in progress.
  • The Dynamic Skeleton Interface (DSI) is not supported. Work is in progress.

Missing features

The following features are missing from omniORB2. We are not currently planning on adding support for these features.

  • The BOA only supports the persistent server activation policy. Other dynamic activation and deactivation polices are not supported.
  • omniORB2 does not has its own Interface Repository.


Installation instructions are provided in the following files:

  • README.unix for all unix platforms
  • README.win32 for Windows NT and Windows 95


  • omniORB2 user guides are located in the ./doc directory. They are available in latex, postscript, acrobat and html formats. Latest versions are available here .
  • Man pages for the programs in this distribution are located in ./man directory.
  • README files are provided throughout the distribution tree. They provide specific information about the directories and files, tools and examples. You may want to explore the tree to become familiar with the information provided in the README files.


  • Example programs that demonstrate the use of omniORB2 are located in ./src/examples.

Recommended Additional Documentation

omniORB2 is based on the following OMG specifications.

  • The Common Object Request Broker: Architecture and Specification. The current version is available on-line at In particular, omniORB2 users will find chapter 3 "OMG IDL Syntax and Semantics" and chapter 16 "Mapping of OMG IDL to C++" particularly relevant.
  • The COS Naming Service Specification. The current version is available on-line at


If you have any queries, suggestions and problems in using omniORB2, contact [email protected] We'd like to hear from you.

The latest version of omniORB2 is available from our Web pages:

There is also a mailing list: [email protected]

This list carries announcements of new releases and provides a forum for omniORB2 users and developers to discuss the usage and future development of omniORB2.

If you want to add yourself to this mailing list, send the following command in the body of your email to "[email protected]":


The archives of the mailing list are available here .


For comments, feedback, etc, please see the 'Keeping in touch' page.
Copyright 1999 - AT&T Laboratories Cambridge