众所周知,Adobe Flash Player 11.2将是支持Linux平台的最后一个版本,不过Google Chrome自带的Flash Player Plugin版本不受这个限制,但Adobe将继续为Flash Player 11.2 for Linux提供安全更新
Flash基础环境除了依附浏览器的Plugin版本外,还有一种Projector版本,即独立播放器程序。虽然插件版已经支持64位系统了,但播放器版本官方始终只提供32位程序包下载
下载地址(含debug版本)
http://www.adobe.com/support/flashplayer/debug_downloads.html
Linux Help(2011年11月版本)
https://helpx.adobe.com/flash-player/release-note/readme-flash-player-linux.html
文档目前只有FP9和FP10的依赖库列表说明,最新也是最后版本的FP11详情很遗憾还未更新
为了避免安装不必要的32位旧依赖库,可以通过启动时缺少库提示来按需安装,如:
1 2 3 4 5 6 7 8 9 10 |
[root@x1c flash]# ./flashplayer ./flashplayer: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory [root@x1c flash]# yum whatprovides libgtk-x11-2.0.so.0 gtk2-2.24.28-8.el7.i686 : The GIMP ToolKit (GTK+), a library for creating GUIs for X 源 :base 匹配来源: 提供 :libgtk-x11-2.0.so.0 [root@x1c flash]# yum install gtk2.i686 -y |
由于每个人的基础环境异同需要补上的32位库也不尽相同,记得上回安装Android SDK时大规模安装过一次,可能有些依赖相同的都省了,本次最终更新列表如下:
1 2 3 4 5 6 7 |
glib2.i686 libX11.i686 libXext.i686 libXt.i686 libXcursor.i686 nss.i686(libssl3.so) gtk2.i686(libgtk-x11-2.0.so.0) |
yum完上述i686基础依赖库,剩下的就是运行时报错的解决了,相关过程如下
GTK默认加载adwaita主题警告:
1 2 3 |
(flashplayer:13285): Gtk-WARNING **: 无法在模块路径中找到主题引擎:“adwaita” yum install adwaita-gtk2-theme.i686 -y |
GTK默认加载PackageKit模块提示:
1 2 3 |
Gtk-Message: Failed to load module "pk-gtk-module" yum install PackageKit-gtk3-module.i686 -y |
GTK默认加载libcanberra模块提示:
1 2 3 |
Gtk-Message: Failed to load module "canberra-gtk-module" yum install libcanberra-gtk2.i686 -y |
运行时闪退:
1 2 3 4 |
(flashplayer:15762): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer (flashplayer:15762): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed yum install libcurl.i686 -y |
运行时无声:
1 2 3 |
ALSA lib dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_pulse.so yum install alsa-plugins-pulseaudio.i686 -y |
折腾完毕之后运行flashplayer或flashplayerdebugger一切顺利