JDK-4414152 : java_wrapper Error: can't find libjava.so with Pentium 4 machines running Linux
  • Type: Bug
  • Component: install
  • Sub-Component: install
  • Affected Version: 1.3.0,1.3.1,1.4.0
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: linux
  • CPU: x86
  • Submitted: 2001-02-10
  • Updated: 2013-06-04
  • Resolved: 2002-11-12
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
1.3.1_07 07Fixed

Name: krC82822			Date: 02/10/2001

java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)

After an "out-of-the-box" install of the Java 2 SDK version 1.3 on my Linux
machine I couldn't run any binaries from the jdk1.3/bin or jdk1.3/jre/bin
directories.  The machine is an Intel Pentium 4 and here is the uname output:
Linux 2.2.16 #5 Wed Feb 7 15:49:36 PST 2001 i?86 unknown

The error I got when trying to invoke any of the binaries was:
Error: can't find libjava.so.

This was the case for any command issued in the java environment.

The problem is in the .java_wrapper script.  In order to find the lib directory
in the jre directory it sets up the $proc variable with proc="`uname -m`" if
i[3-6]86 (and others) aren't found. So for my machine it sets up $proc as "i?86"
and therefore it can't find libjava.so because the directory it is searching
does not exist.
(Review ID: 116733) 

Name: yyT116575			Date: 10/24/2001

java -version
Error: could not find libjava.so
Error: could not find Java 2 Runtime Environment.

tried both the rpm and gnuzip installations, both did this.  Never had a
problem with 1.4 beta1.  Fresh linux install, beat 1 was not available.1.3
works fine.
(Review ID: 134321)

CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: 1.3.1_05 FIXED IN: 1.3.1_07 INTEGRATED IN: 1.3.1_07

WORK AROUND Name: krC82822 Date: 02/10/2001 To fix the problem add | i?86 to the first case statement in jdk1.3/bin/.java_wrapper and jdk1.3/jre/bin/.java_wrapper scripts So the new case statement should look like: case "`uname -m`" in i[3-6]86 | ia32 | ia64 | i?86) # | i?86 is new proc=i386 ;; # the rest is the same NOTE: This solution has been only been tested on a Intel Pentuim 4 running Slackware Linux Version 7.1 Kernel 2.2.16 ======================================================================

EVALUATION For Merlin, the .java_wrapper script has been replaced with real executables. I'm handing this over to our CTE team for consideration in the 1.3 update releases. To align with Merlin priorities, I'm also downgrading this to a P4. ###@###.### 2001-09-11