JDK-6500693 : Precompiled JDK install fails with "install.sfx. No such file" on pure 64 system
  • Type: Enhancement
  • Component: install
  • Sub-Component: install
  • Affected Version: 5.0
  • Priority: P5
  • Status: Closed
  • Resolution: Won't Fix
  • OS: linux
  • CPU: x86
  • Submitted: 2006-12-05
  • Updated: 2016-01-20
  • Resolved: 2016-01-20
Description
A DESCRIPTION OF THE REQUEST :
Attempting to install the precompiled Java binaries on a pure 64-bit Linux system fails as described in the Actual Behavior section.  This has been observed with jdk-1_5_0_09-linux-amd64.bin, jdk-1_5_0_10-linux-amd64.bin, and jre-1_5_0_10-linux-amd64.bin.

This is either the same or a similar issue as reported in bug reports 6234498 and 6311871.  Neither bug report provides sufficient detail to determine whether the reporter was using a pure 64 or multilib system.  Suspect that this is an only an issue on pure 64-bit systems.  It's certainly not a bug.

The target system is a desktop PC with an AMD64 Athlon processor.  Linux OS is cross-compiled IAW with version 1.0.0 of the CLFS book for pure 64-bit.  The problem is the /lib64/ld-linux-x86-64.so.2 path hard coded in the *.bin file and I suspect the Java binaries as well.  On a pure 64-bit system, the FHS can be adhered to and there are no /lib64 directories.  So ld-linux-x86-64.so.2 and its target are in /lib.

Mounted another partition at /mnt/gentoo with a known working JDK version 8.  When I attempted to execute /mnt/gentoo/java --version, "No such file or directory" is returned.  Since Gentoo is multilib, it's Java would be looking in /lib64 as well.

JUSTIFICATION :
Not all 64-bit systems are multilib and there will be less need for multilib in the future.  Either providing binaries compiled on a pure 64-bit system or add to the on-line installation instructions resolves the issue.

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Extraction of the precompiled binaries and subsequent use of the binaries is successful on a pure 64-bit system.
ACTUAL -
1. Download jdk-1_5_0_09-linux-amd64.bin
2. chmod +x jdk-1_5_0_09-linux-amd64.bin
3. ./jdk-1_5_0_09-linux-amd64.bin

Licensing agreement is displayed.  After accepting the licensing agreement, the following:

Do you agree to the above license terms? [yes or no]
y
Unpacking...
Checksumming...
0
0
Extracting...
./jdk-1_5_0_09-linux-amd64.bin: line 396: ./install.sfx.6388: No such file or directory

Done.

CUSTOMER SUBMITTED WORKAROUND :
Creating the appropriate symlink works.

mkdir -v /lib64 &&
ln -sv /lib/ld-2.4.so /lib64/ld-linux-x86-64.so.2

However, there will then be a /lib/ld-linux-x86-64.so.2 and a /lib64/ld-linux-x86-64.so.2 on the system.  The effects of this may be confusing to other packages, especially when building from source.  I would be concerned that this might result in latent issues.

Comments
EVALUATION This can be fixed in later release of 7, along with any other 64 bit issues.
05-07-2007