Sometimes, when you try to run IBM Installation Manager (IM), you may get an error like this:

00:43.15 ERROR [main] org.eclipse.equinox.log.internal.ExtendedLogReaderServiceFactory safeLogged
Could not load SWT library. Reasons:
/opt/IBM/WebSphere/IM/eclipse/configuration/org.eclipse.osgi/bundles/288/1/.cp/libswt-pi-gtk-4234.so (libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory)
swt-pi-gtk (Not found in java.library.path)
/root/.swt/lib/linux/s390/libswt-pi-gtk-4234.so (libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory)
/root/.swt/lib/linux/s390/libswt-pi-gtk.so (/root/.swt/lib/linux/s390/liblibswt-pi-gtk.so.so: cannot open shared object file: No such file or directory)
............

    This is due to IM not being able to run because the server does not have a proper graphical environment configured. The most probable reason for this is because GTK2 is not installed. IM is based on Eclipse and they rely heavily on graphical libraries.

    The following example is based on a SUSE Linux Enterprise Server 10 SP4 (s390x). The version of IBM Installation Manager we will fix is 1.6.2. Other configurations may or may not work and may or may not apply to this guide. Let me know in the comments section if it worked for you.

    You could try to install GTK2 using rpm -i but if you decide to follow this path you need to be prepared to enter the Dependency Hell. Abandon all hope, ye who enter here.

    In this guide we will use YaST in order to properly install GTK2 and all its dependencies, this should be enough to get IM up and running. According to your OS, you could use smitty, yum, or any other available means. The goal here is to install all the dependencies correctly and without conflicts. If you do it manually, it may take a long time, and you run the risk of not getting anywhere or breaking stuff that was already working.

    Enter into the server via SSH and execute YaST (just type “yast” and hit enter). Make sure to login using the -X or -Y flag in SSH. E.g. ssh -X root@hostname

    A beautiful blue screen should appear. This is YaST, where you move with the tab key and the arrow keys, and select options with enter.

    Select Software and then Software Management. It may take a while to initialize and you may get warnings or error messages about the software repository.

yast1

    After that, select Search and type “gtk“, the select OK.

yast2

    The following are the packages that I installed in my zLinux server (the ones marked with “i” in the first column). You may not need all of them, and some of them may not apply in your case but this is a good reference for what should be installed for IM to work.

    Note that this server has a 64 bits architecture and thus we mostly ignore the 32 bits packages.

gtk1gtk2

    Once you have marked all the packages you want to install (they will be marked with a plus sign) select Accept and they should be installed.

    With the packages installed, try to run IM again and this time it should work.

IM

    This solution seems simple and maybe obvious but you can spend many hours trying to fix this problem. I have been there and I have seen many people struggling with IM. In the past I approached this problem trying to change the library paths and doing other desperate things I found on the Internet, but this is the only solution that finally worked for me. I hope this helps.