搜索 | 用户支持

防范以用户支持为名的诈骗。我们绝对不会要求您拨打电话或发送短信,及提供任何个人信息。请使用“举报滥用”选项报告涉及违规的行为。

详细了解

Firefox on linux gets confused when both 32bit and 64bit plugins are found

  • 2 个回答
  • 1 人有此问题
  • 16 次查看
  • 最后回复者为 cor-el

more options

On a CentOS6 machines, 32bit plugins get installed to /usr/lib/mozilla/plugins and 64bit plugins get installed /usr/lib64/mozilla/plugins. If both locations have the same plugin installed, such as libflashplayer.so, then 64bit firefox seems to randomly find one first and fail when it sees the 32bit version first. This results in Flash working for some users and not for others .

I can run "strings -a ~/.mozilla/firefox/*/pluginreg.dat | grep usr.lib" and see which users will have it fail because the 32bit path to libflashplayer.so is listed first for them. For the users where it works the 64bit version in /usr/ilb64 is listed first.

I see no way to make 64bit firefox ignore what is in /usr/lib/mozilla/plugins as this seems hardcoded into the binary. I also see no way to make the /usr/lib64 path take precedence as I have MOZ_PLUGIN_PATH=/usr/lib64/mozilla/plugins-wrapped

The output I see on the stderr is:

LoadPlugin: failed to initialize shared library /usr/lib/flash-plugin/libflashplayer.so wrong ELF class: ELFCLASS32 [8941] WARNING: pipe error (60): Connection reset by peer: file /builds/slave/rel-m-rel-l64_bld-000000000000/build/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 450

repeated many times

It seems to me at least that plugins in a user set MOZ_PLUGIN_PATH should always take precedence over those in a hard coded path like /usr/lib/mozilla/plugins

On a CentOS6 machines, 32bit plugins get installed to /usr/lib/mozilla/plugins and 64bit plugins get installed /usr/lib64/mozilla/plugins. If both locations have the same plugin installed, such as libflashplayer.so, then 64bit firefox seems to randomly find one first and fail when it sees the 32bit version first. This results in Flash working for some users and not for others . I can run "strings -a ~/.mozilla/firefox/*/pluginreg.dat | grep usr.lib" and see which users will have it fail because the 32bit path to libflashplayer.so is listed first for them. For the users where it works the 64bit version in /usr/ilb64 is listed first. I see no way to make 64bit firefox ignore what is in /usr/lib/mozilla/plugins as this seems hardcoded into the binary. I also see no way to make the /usr/lib64 path take precedence as I have MOZ_PLUGIN_PATH=/usr/lib64/mozilla/plugins-wrapped The output I see on the stderr is: LoadPlugin: failed to initialize shared library /usr/lib/flash-plugin/libflashplayer.so [/usr/lib/flash-plugin/libflashplayer.so: wrong ELF class: ELFCLASS32] [8941] WARNING: pipe error (60): Connection reset by peer: file /builds/slave/rel-m-rel-l64_bld-000000000000/build/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 450 repeated many times It seems to me at least that plugins in a user set MOZ_PLUGIN_PATH should always take precedence over those in a hard coded path like /usr/lib/mozilla/plugins

所有回复 (2)

more options

HI paulraines68, This may be a question that is beyond the user support of this forum. There are channels I can point you to for feedback or how to submit a bug for this [bugzilla.mozilla.org].

However stackoverflow.com may be the best place for solving the immediate question.

more options