Back to blog

YUM for AIX: Eases Transition to Linux Applications on AIX

“IBM finally put together a yum package for the AIX Toolbox.”

Ever since AIX version 5.3, IBM has built in what is known as Linux affinity. Essentially, this means that if a Linux application uses standard API’s, then you should be able to recompile that application on AIX using GNU gcc and g++ compilers, and it should run just fine (actually, better) on AIX.

To that end, IBM has provided the “AIX Toolbox for Linux Applications”, which, as the name implies is a set of tools to accomplish this. The Toolbox is provided as a set of RPM packages, just like you find in Linux. There is an AIX fileset, rpm.rte, that allows you to manage RPMs in the same was as you do in Linux.

While I haven’t ported any Linux applications to AIX, I’ve come to appreciate some of the features available in Linux and have had the desire to use these features in AIX. So, the AIX Toolbox is the bridge that gets us there. However, up to now the rpm.rte package that supplies us with the rpm command has been lacking in the ability to install a complex set of packages. To be fair, it’s the same problem that we have in Linux, because rpm doesn’t inherently know how to resolve dependencies. In both AIX and Linux, rpm will work just fine if you have the package that you want to install, the dependencies for that package, and the dependencies for those dependencies, and so on. If you don’t have everything you need, you can get mired down in searching and collecting all these requisites in a time-consuming endeavor that we fondly call ‘dependency hell’.

In the case of Red Hat Linux, they developed a package installation manager known as “yum” to resolve the dependency hell problem. When you try to install a particular package, yum tracks down, downloads, and installs all the requisites from known repositories, resulting in a nice, clean, consistent, easy installation every time.

So, do you see where I was headed with this?  Yes, IBM finally put together a yum package for the AIX Toolbox. It works just like you would expect it to and makes the transition to Linux Applications on AIX that much easier. Here how to install it.

 

Download rpm.rte.4.9.1.3 from:

https://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/INSTALLP/ppc/

Install rpm.rte.4.9.1.3:

mkdir /tmp/lpp

copy the downloaded file “rpm.rte.4.9.1.3” in binary format to this directory

cd /tmp/lpp

installp -a -c -Y -d /tmp/lpp rpm.rte

Download the yum installation package (yum_bundle_v2.tar) from:

https://public.dhe.ibm.com/aix/freeSoftware/aixtoolbox/ezinstall/ppc/

Install the package:

mkdir /tmp/yum

copy the downloaded file yum_bundle_v2.tar to /tmp

cd /tmp/yum

tar xvf /tmp/yum_bundle_v2.tar

rpm -Uvh *rpm

You can check out the installation by using some yum commands like:

# yum repolist

You should get output like:

AIX Toolbox                                                 | 2.9 kB 00:00

AIX Toolbox_71                                           | 2.9 kB 00:00

AIX Toolbox_noarch                                    | 2.9 kB 00:00

repo id                               reponame status

AIX Toolbox                       AIX generic repository  299

AIX_Toolbox_71                AIX specific repository       10

AIX_Toolbox_noarch          AIX noarch repository         27

repolist: 336

Try some other yum commands like:

# yum list available

# yum list installed

Hope you enjoy having yum available in AIX as much as I do. Next time, I’ll talk about some of the neat tools that are available to make your AIX Administration life even easier.

About the Author

Glenn Miller
Systems Engineer Meet Glenn

Let’s Get Started.

We’ll meet for a free consultation about solutions to your most pressing IT, Infrastructure and Security needs. Then we’ll make it happen.

Contact Volta

Volta Support

We appreciate your business and we’re here to support you. Call the number below and select option 1 for immediate assistance.

...or send us an email.

  • This field is for validation purposes and should be left unchanged.

All fields required