Bug 131197 - No java plugin for mozilla on x86_64
Summary: No java plugin for mozilla on x86_64
Status: RESOLVED FIXED
Alias: None
Product: SUSE LINUX 10.0
Classification: openSUSE
Component: Firefox (show other bugs)
Version: RC 4
Hardware: All Other
: P5 - None : Enhancement
Target Milestone: ---
Assignee: Wolfgang Rosenauer
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-10-28 00:58 UTC by Klaus Singvogel
Modified: 2005-11-02 08:45 UTC (History)
0 users

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Klaus Singvogel 2005-10-28 00:58:59 UTC
This problem is restricted to Mozilla (mozilla-1.7.11-9.2), and not present in Firefox.

I'm running my Mozilla on my AMD64 machine and noticed that no plugins are working: no Java, no Flash, no RealPlayer, others?

First I tried to solve it by calling script "/opt/mozilla/bin/add-plugins.sh", but script doesn't add anything into Mozilla:
For example the inclusion of Java fails, because "java-1_5_0-sun-plugin" is a i586 RPM package, whereas "java-1_5_0-sun" is a x86_64 RPM and so the test
     if [ "`get_arch $i`" = "$mozilla_arch" ]; then
in find_java() function fails. :-(

After I created the link from "/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so" to "/opt/mozilla/lib64/plugins" manually, exited Mozilla, restarted Mozilla, the URL about:plugins still shows only the minimal plugin; the Default Plugin, but no Java.

-------------------------------------------------------------------------------------
The problem regarding RealPlayer is nearly the same:
a) first of all "file /usr/lib64/browser-plugins/nphelix.so" fails, because it's not the shared library, instead the link to "/usr/lib/browser-plugins/nphelix.so" is tested. --> link is no AMD x86-64 file --> fail.
Suggested fix: add option "-L" to "file" call in get_arch() function, to dereference a link.
b) After I added the dereferenced link test by the file comand in "/opt/mozilla/bin/add-plugins.sh" it fails again, as again a "Intel 80386" is compared with "AMD x86-64". :-( So, "/usr/lib[64]/browser-plugins/nphelix.so" is from wrong architecture; Not much astonishing, as we are only able to redristibute a RealPlayer for i586 architecture only on our distribution...
c) finally creating the appropriate link in /opt/mozilla/lib64/plugins, but this has no effect. There isn't any such plugin in Mozilla shown. :-(

With 9.3 this all worked fine.

Any hints?
Comment 1 Klaus Singvogel 2005-10-28 01:11:09 UTC
BTW: this is the output of mozilla at terminal window:
/usr/bin/mozilla --debug 
LoadPlugin: failed to initialize shared library /usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so [/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so: cannot open shared object file: No such file or directory]
LoadPlugin: failed to initialize shared library /usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so [/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so: cannot open shared object file: No such file or directory]


and here the relevant part of strace:

open("/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so", O_RDONLY) = 36
read(36, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\352\0\0004\0\0\0\234\v\2\0\0\0\0\0004\0 \0\4\(\0\32\0\31\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\310\300\1\0\310\300\1\0\5\0\0\0\0\20\0\0\1\0\0\0\340\300\1\0\340\320\1\0\340\320
\1\0\204F\0\0\220F\0\0\6\0\0\0\0\20\0\0\2\0\0\0\20\1\2\0\20\21\2\0\20\21\2\0\330\0\0\0\330\0\0\0\6\0\0\0\4\0\0\0P\345td\364\266\1\0\364\266\1\0\364\266\1\0\324\
t\0\0\324\t\0\0\4\0\0\0\4\0\0\0\251\3\0\0\320\2\0\0\36\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\35\0\0\0o\1\0\0\210\2\0\0"..., 640) = 640
close(36)                         = 0
write(2, "LoadPlugin: failed to initialize shared library /usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so [/usr/lib/jvm/java-1.5.0-sun-1.5.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so: cannot open shared object file: No such file or di"..., 265) = 265

Comment 2 Klaus Singvogel 2005-10-28 02:02:20 UTC
Well, I finally detected that FireFox is installed as i586.rpm (don't know why) and so did I with mozilla. Now Java, RealPlayer, etc. are working. *sic* hopefully mozilla-*.x86_64.rpm will soon support the 32bit libraries.
I suggest to close this entry now.
Comment 3 Wolfgang Rosenauer 2005-10-28 04:16:08 UTC
Firefox is only installed as ix86 version because exactly this reason.
IMHO we are far away from making it possible to use 32bit plugins in mozilla because there is no infrastructure at the moment. All plugins are loaded in process and that's simply not possible. My feeling says that mozilla.{org,com} is not interested in fixing this.
Comment 4 Klaus Singvogel 2005-10-28 12:48:58 UTC
Sometimes I can understand the Mozilla developers. If they say: we want x86_64 plugins from the vendors (like Sun or RealMedia), to get those running native, then it is a valid argumentation for me.
The thing that confused me, was that Firefox has Java support and Mozilla not after installation.

Nevertheless, think about my suggested fix in my initial comment regarding script "/opt/mozilla/bin/add-plugins.sh" and the use of option "-L" for "file" call.
Comment 5 Wolfgang Rosenauer 2005-10-28 12:53:36 UTC
reopen for the enhancement request in comment #4
Comment 6 Wolfgang Rosenauer 2005-11-02 08:45:31 UTC
- mozilla is deprecated and might disappear in 10.1
- the successor seamonkey and firefox don't use add-plugins anymore but
  rely on a correct /usr/%{_lib}/browser-plugins