StarQuest Technical Documents

Linux Prerequisites for CAUNIX & StarLicense

Last Update: September 14, 2017
Product: StarQuest Client Access for UNIX
Operating System: Linux
Article ID: SQV00CA012

Abstract

When Client Access for UNIX and StarLicense are deployed to a different environment than the one in which they were built (e.g. a later distribution of Linux), it is sometimes necessary to install prerequsite packages.

This is especially true for installing 32-bit packages in a 64-bit environment, as the 32-bit runtime libraries are not installed by default in most recent Linux distributions. Both CAUNIX and StarLicense are 32-bit packages.

The techniques described in this technical document apply to RPM-based Linux distributions such as Red Hat, CentOS, SUSE, and Oracle. Similar techniques are available on Debian & Ubuntu distributions.

These procedures were tested on 64-bit versions of CentOS 6.9 and CentOS 7.3. Note that the version numbers included in package names may differ.

Solution

StarLicense

StarLicense Server is currently only available as a 32-bit package.

Run the following install the 32-bit C and C++ runtime libraries:

# yum install libstdc++.i686

This will also include the dependencies glibc.i686, libgcc.i686, nss-softokn-freebl.

You can use the following to verify that dependencies are met (install the product with RPM, remove it, and reinstall with the setup script):

# rpm -i starlicense-1.33-1.i386.rpm
(this will display missing libraries, or succeed)
# rpm -e starlicense
# ./setup

CAUNIX

Client Access is also a 32-bit package. In addition to the 32-bit C and C++ runtimes, additional packages are needed as described below. CAUNIX is not distributed as an RPM, so the method of using rpm -i to determine missing dependencies cannot be used. However, after installation, the techniques of using the ldd command or running the product and looking at the error messages can be used.

Non-X-Windows applications need libncurses.so.5 and libstdc++-libc6.2-2.so.3

Use yum provides to determine the name of the packages to install

# yum provides libncurses.so.5
# yum install ncurses-libs-5.9-13.20130511.el7.i686

# yum provides libstdc++-libc6.2-2.so.3
# yum install compat-libstdc++-296-2.96-144.el6.i686

compat-libstdc++-296 is available in Red Hat/CentOS 6 distributions, but not in v7 distributions. However, we have successfully installed the RPM from CentOS 6 on a CentOS 7 system (it has no dependencies), and successfully run CAUNIX:

You can download the CentOS version of this package from http://mirror.centos.org/centos/6/os/x86_64/Packages/compat-libstdc++-296-2.96-144.el6.i686.rpm

locales

In addition to installing the dependencies, perform one of the following steps to compensate for differences in locale names between what Linux currently uses and what CAUNIX expects. For instance, CAUNIX expects en_US.utf8, but the default locale on recent Linux distributions is en_US.UTF-8. Use echo $LANG to display your locale. Applications may hang if you fail to account for the locale name.

  • Edit the file $CA400/etc/conf/lang.cs and add line for your locale. e.g. for en_US.UTF-8, copy the line for en_US.utf8.

or

  • Set your locale to C (or one of the other NLS locales supported by CAUNIX) rather than the default of en_US.UTF-8.

bash: export LANG=C
csh: setenv LANG C

 

X-Windows applications need Motif libraries

Using ldd on any of the X-Windows applications in $CA400/bin shows a dependency of libXm.so.3

# yum provides libXm.so.3
# yum install openmotif22-2.2.3-19.el6.i686

This also installs several dependencies (libXmu, libXp, libXt)

openmotif on Red Hat/CentOS 7 distributions

Like compat-libstdc++-296, openmotif22 is available in Red Hat/CentOS 6 distributions, but not in v7 distributions.

You can download the CentOS 6 version of this package from http://mirror.centos.org/centos/6/os/x86_64/Packages/openmotif22-2.2.3-19.el6.i686.rpm

Most of the dependencies of openmotif22 (libX11.i686, libXmu.i686, libXp.i686, etc) can be installed from the 7.x repository; the openmotif22 package was the only RPM that was retrieved from the 6.x repository. However, after installing the dependent packages, there was still one missing dependency (/usr/share/X11/XKeysymDB). This file is part of the libX11-common.noarch package and appears to have been removed from the newer version supplied with Linux 7.x. We copied the missing file from a CentOS 6.x system, and when rpm -i still complained, used the --nodeps flag to install openmotif22.

 


DISCLAIMER

The information in technical documents comes without any warranty or applicability for a specific purpose. The author(s) or distributor(s) will not accept responsibility for any damage incurred directly or indirectly through use of the information contained in these documents. The instructions may need to be modified to be appropriate for the hardware and software that has been installed and configured within a particular organization.  The information in technical documents should be considered only as an example and may include information from various sources, including IBM, Microsoft, and other organizations.