Using the AIX Binary Distribution

This page provides important information for users of the Ice binary distribution for AIX. You can obtain this distribution at the ZeroC web site.

On this page:

Overview of the Ice Binary Distribution for AIX

RPM Packages

ZeroC provides the following RPMs packages for AIX:

ice-all-develMeta package that installs all development packages
ice-all-runtimeMeta package that installs all run-time packages, servers, and utilities
glacier2Glacier2 service
iceboxIceBox server for C++
icebridgeIceBridge service
icegridIceGrid service
icepatch2IcePatch2 executable
ice-compilersSlice compilers, such as slice2cpp, slice2java and slice2py
ice-repoThe yum repo file for Ice


Slice files
ice-utilsUtilities necessary for administering Ice services
libice-c++-develC++ header files
libice3.7-c++C++ run-time libraries
libicestorm3.7IceStorm service

ZeroC also supplies RPMs for the following third-party packages:



expat-static-develA stream oriented XML parser library


Admin tools for LMDB (statically linked)


Header file and static library for LMDB


Static library for the MCPP C++ preprocessor


Installing the AIX Binary Distribution

Follow the instructions below to install Ice on AIX:

1. Add the Ice repositories to your system: 

sudo dnf install

2. Install Ice:

 sudo dnf install ice-all-runtime ice-all-devel

Refer to the package summary above if you would like to install fewer packages.

The Ice RPM packages for AIX were all built with IBM XL C/C++ and have no dependency on the GCC runtime.

Setting Up your AIX Environment to Use Ice

After installing Ice, read the relevant language-specific sections below to learn how to configure your environment and start programming with Ice.

Ice RPM packages are installed in /opt/freeware like other RPM packages on AIX. The installation creates symbol links in /usr/bin for programs like slice2cpp and icegridregistry. However, the installation does not create symbolic links in /usr for Ice headers files and libraries.


When compiling and linking Ice for C++ programs, you must use xlC_r and enable RTTI. A typical compile command would look like this:

xlC_r -q64 -qrtti -qstaticinline -I/opt/freeware/include -c myprogram.cpp

When linking a program you must link with at least the Ice library. A typical link command would look like this:

xlC_r -q64 -qrtti -qstaticinline -o myprogram myprogram.o -L/opt/freeware/lib -lIce

Additional libraries are necessary if you are using an Ice service such as IceGrid or Glacier2.

Using the Sample Programs on AIX

Sample programs for all programming languages are available in a separate ice-demos GitHub repository. Simply clone this repository:

git clone -b 3.7
cd ice-demos