Ubuntu Hardy 8.04 is the current long term support (LTS) version of Ubuntu. It promotes stability and security over features and innovation. For that reason, the non-free version of Adobe Flash Player that can be installed through their repositories is still version 9. The problem is that my Firefox crashes often with Flash content, thus killing the requirement of stability of my box. For this reason, I wanted to install the version 10. The Adobe site presents the nice option to download a deb package for Ubuntu 8.04 or newer, so i get that (from here: http://get.adobe.com/flashplayer/).
I make sure that Firefox is not running
pgrep firefox && pkill firefox
Uninstall flash 9
sudo apt-get remove --purge flashplugin-nonfree
Install the new version
sudo dpkg -i ./install_flash_player_10_linux.deb
At this point, Shockwave Flash should appear in the plugin list, but in my case it did not show. By opening Firefox from the command line, the following error was printed on the console:
LoadPlugin: failed to initialize shared library /usr/lib/adobe-flashplugin/libflashplayer.so [libplds4.so: cannot open shared object file: No such file or directory]
This means that the plugin didn’t found a library it needs. The usual place for libraries is /usr/lib. Searching in that directory I found a file named libplds4.so.0d.
$ file /usr/lib/libplds4.so.0d
/usr/lib/libplds4.so.0d: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped
It was indeed a shared library. I decided to create the missing library by linking to this file I found.
sudo ln -s /usr/lib/libplds4.so.0d /usr/lib/libplds4.so
By restarting Firefox, the error disappeared, but a new library was not found: this time it was libplc4.so's turn, and in the same way, this library is present with a different name. Using the same technique, I created a link for that library too. The same for libnspr4.so. After that, the page about:plugins in Firefox shows the plugin clearly:
- File name: libflashplayer.so
- Shockwave Flash 10.0 r22
And YouTube works again. If someone knows why this issue occurred, feel free to leave a comment. Hope this helps.