United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6542512 Plugin for JDK 6u2 b01 doesn't work on RHEL 5 x86
JDK-6542512 : Plugin for JDK 6u2 b01 doesn't work on RHEL 5 x86

Details
Type:
Enhancement
Submit Date:
2007-04-04
Status:
Closed
Updated Date:
2011-01-19
Project Name:
JDK
Resolved Date:
2007-06-30
Component:
deploy
OS:
linux_redhat_4.0,linux
Sub-Component:
plugin
CPU:
x86
Priority:
P3
Resolution:
Fixed
Affected Versions:
6u2
Fixed Versions:
6u4 (b01)

Related Reports
Backport:
Duplicate:

Sub Tasks

Description
Java Plugin  for JDK 6 u2 b01 doesn't work on RHEL 5 x86 with the mesage:

java.lang.UnsatisfiedLinkError: /export/JDK/jdk1.6.0_02/jre/lib/i386/libdeploy.s
o: libstdc++.so.5: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1647)
        at java.lang.Runtime.load0(Runtime.java:770)
        at java.lang.System.load(System.java:1005)
        at com.sun.deploy.config.UnixConfig.loadLibDeploy(UnixConfig.java:38)
        at com.sun.deploy.config.UnixConfig.<clinit>(UnixConfig.java:26)
        at com.sun.deploy.config.ConfigFactory.newInstance(ConfigFactory.java:11
)
        at com.sun.deploy.config.Config.getInstance(Config.java:662)
        at com.sun.deploy.config.Config.<clinit>(Config.java:678)
        at sun.plugin.util.PluginConfig.<init>(PluginConfig.java:31)
        at sun.plugin.util.UserProfile.<clinit>(UserProfile.java:24)
        at sun.plugin.AppletViewer.loadPropertiesFiles(AppletViewer.java:144)
        at sun.plugin.JavaRunTime.initEnvironment(JavaRunTime.java:84)
        at sun.plugin.navig.motif.Plugin.doit(Plugin.java:131)
        at sun.plugin.navig.motif.Plugin.start(Plugin.java:104)
Exception in thread "SysExecutionThead" java.lang.NoClassDefFoundError: Could no
t initialize class com.sun.deploy.config.Config
        at com.sun.deploy.ui.DialogTemplate.deriveParent(DialogTemplate.java:154
1)


the code problem is:

ldd libdeploy.so 
        linux-gate.so.1 =>  (0x006e8000)
        libc.so.6 => /lib/libc.so.6 (0x00d58000)
        libstdc++.so.5 => not found
        libm.so.6 => /lib/libm.so.6 (0x00613000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00af2000)
        /lib/ld-linux.so.2 (0x4dd10000)


Plugin still works on RHEL 4

                                    

Comments
EVALUATION

RHEL 5 is not an officially supported platform:

http://java.sun.com/javase/6/webnotes/install/system-configurations.html

Same problem exists on Fedora too.

Problem is libdeploy.so in Java 6 or above depends on libstdc++.so.5; and libstdc++.so.5 is not available by default on Fedora.

In Java 5 or earlier, libdeploy.so does not have any c++ code.  So there is no dependency on libstdc++.

In Java 6, we added c++ code to libdeploy.so, for the performance timing work:

6372091: Add performance monitoring to Plug-in on Windows.

Seems like many people run into similar problems on Fedora, including Intel:

http://www.intel.com/support/performancetools/c/linux/sb/CS-023486.htm

Currently, Fedora is not a supported platform on Java 6:

http://java.sun.com/javase/6/webnotes/install/system-configurations.html

If we decide we need to run on Fedora by default, we should either document this problem; or statically link the c++ lib; or we can remove the dependency on libstdc++.so.5.
                                     
2007-04-05
SUGGESTED FIX

static link to libstdc++.a for now

http://web-east.east/deployment/www/webrevs/ngthomas/6542512/webrev/
                                     
2007-05-19



Hardware and Software, Engineered to Work Together