Technical>>Installation

Impossible to install tuxedo 8.1 (32bits) on Asianux 2 SP3.


Problem:

Impossible to install tuxedo 8.1 (32bits) on Asianux 2 SP3.
Error message:

    [bea@dhcp19 mnt]$ ./tuxedo81_linux.bin
    Preparing to install...
    Error occurred during initialization of VM
    Unable to load native library:
    /tmp/install.dir.5460/Linux/resource/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference

Solution:

Please follow these steps below to start tuxedo 8.1 installer(32bit version):

1. login as root and save the source code below  to file libcwait.c (this source code provides the function __libc_wait).

    #include <unistd.h>
    #include <sys/syscall.h>
    #include <sys/types.h>
    #include <sys/wait.h>

    pid_t
    __libc_wait (int *status)
    {
      return syscall (SYS_wait4, WAIT_ANY, status, 0, NULL);
    }

2. build the source to a shared library using the command below (ia32 and x86_64 systems use different commands):

ia32 system:

    # gcc -O2 -shared -o libcwait.so -fpic libcwait.c

x86_64 system:

    # gcc -m32 -O2 -shared -o libcwait.so -fpic libcwait.c

3. put the file libcwait.so you just built in the user bea`s home directory, and change the permission so that the user bea can use it.

4. run the commands below then change to user bea (ia32 and x86_64 systems use different commands):

ia32 system:

    # xhost +
    # su - bea

x86_64 system:

    # xhost +
    # setarch i686
    # su - bea

5. assuming that the tuxedo 8.1 installation CD is mounted in /mnt/cdrom, go into the directory /mnt/cdrom and run the command below to start tuxedo installer:

    $ LD_PRELOAD=~/libcwait.so ./tuxedo81_linux.bin

Note: The tuxedo installer does not handle hostnames with several dots (for example: dhcp19.asianux.com) so change your hostname to something simpler like myhostname.