Running APPX in a 64 bit Linux/Unix environment

This page explains how you can run APPX in a 64 bit Linux/Unix environment. No special set up is required for 64 bit Windows installations, as Windows natively supports running 32 bit applications in a 64 bit environment.


Overview

The basic process is to identify which 32 bit libraries are missing, then install them.

Identify the missing libraries

You can use the 'ldd' command on the 'appx' executable to determine which libraries it needs and which ones are missing:

[root@localhost jneron]# ldd /appx544/appx
   linux-gate.so.1 =>  (0xf7731000)
   libkrb5.so.3 => not found
   libdl.so.2 => /lib/libdl.so.2 (0xf7717000)
   libm.so.6 => /lib/libm.so.6 (0xf76d5000)
   libz.so.1 => not found
   libxml2.so.2 => not found
   libstdc++.so.6 => /lib/libstdc++.so.6 (0xf75e8000)
   libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf75cd000)
   libc.so.6 => /lib/libc.so.6 (0xf7410000)
   /lib/ld-linux.so.2 (0xf7732000)
   libk5crypto.so.3 => not found

In this example, we can see that several libraries are missing (libkrb5.so.3, libz.so.1, libxml2.so.2 and libk5crypto.so.3)

In some cases, ldd might give an error instead of listing the libraries. In that case, use the objdump command:

objdump -p /path/to/program | grep NEEDED

Installing the missing libraries

The next step is to identify which packages contain the missing libraries and to install those packages. The method you use to identify the package depends on the Linux distribution you are using. You can also use http://rpmfind.net/linux/rpm2html/search.php or other rpm find tools to find the package.

In Centos 7, we can use yum:

[root@localhost jneron]# yum provides libkrb5.so.3
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirror.netflash.net
 * extras: muug.ca
 * updates: muug.ca
krb5-libs-1.13.2-10.el7.i686 : The shared libraries used by Kerberos 5
Repo        : base
Matched from:
Provides    : libkrb5.so.3



krb5-libs-1.13.2-12.el7_2.i686 : The shared libraries used by Kerberos 5
Repo        : updates
Matched from:
Provides    : libkrb5.so.3

From this, we can see that the package krb5-libs-1.13.2-12.el7_2.i686 includes the missing library, so we use 'yum' to install it:

[root@localhost jneron]# yum install krb5-libs-1.13.2-12.el7_2.i686
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirror.netflash.net
 * extras: muug.ca
 * updates: muug.ca
Resolving Dependencies
--> Running transaction check
---> Package krb5-libs.i686 0:1.13.2-12.el7_2 will be installed
--> Processing Dependency: libssl.so.10(libssl.so.10) for package: krb5-libs-1.13.2-12.el7_2.i686
--> Processing Dependency: libssl.so.10 for package: krb5-libs-1.13.2-12.el7_2.i686
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10) for package: krb5-libs-1.13.2-12.el7_2.i686
--> Processing Dependency: libcrypto.so.10 for package: krb5-libs-1.13.2-12.el7_2.i686
--> Running transaction check
---> Package openssl-libs.i686 1:1.0.1e-51.el7_2.5 will be installed
--> Processing Dependency: libz.so.1 for package: 1:openssl-libs-1.0.1e-51.el7_2.5.i686
--> Running transaction check
---> Package zlib.i686 0:1.2.7-15.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package            Arch       Version                      Repository     Size
================================================================================
Installing:
 krb5-libs          i686       1.13.2-12.el7_2              updates       838 k
Installing for dependencies:
 openssl-libs       i686       1:1.0.1e-51.el7_2.5          updates       939 k
 zlib               i686       1.2.7-15.el7                 base           90 k

Transaction Summary
================================================================================
Install  1 Package (+2 Dependent packages)

Total download size: 1.8 M
Installed size: 4.6 M
Is this ok [y/d/N]: y

Notice that because of dependances, yum installed some extra packages. These may have provided other missing libraries, so it's worthwhile to repeat the 'ldd' command to see which libraries are still missing.

APPX Login Manager

The APPX Login Manager (appxLoginMgr) has slightly different dependancies, so you should repeat this procedure for it as well.

Comments



This topic: Main > WebHome > SystemAdministration > Install64bit
Topic revision: r2 - 2019-01-28 - JeanNeron
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback