Build Date: Mon Sep 9 15:30:10 2024 UTC

All Bad People of the Future had shitty lives as Miserable People of the Past.
-- Johnnie Royale

Displaying PDF Files in Mozilla

by Baron Earl

2005-11-08 18:50:52

At some point, my Mozilla browser stopped displaying PDF files. When I first installed it, I could view PDF files in a tabbed browser window just fine, but somewhere along the upgrade path viewing PDFs just stopped working.

I've been using Mozilla since the pre-v1.0 days, and I've upgraded through every stable version since the first one came out, and a few of the alpha and beta versions as well. At some point along the way with all of those upgrades, Mozilla stopped displaying PDF files. I could click a link, and the window would show the PDF file in the location bar, but the screen would be blank. My only option at that point would be to right-click the link to the PDF file, save the file, and then use Konquerer to open the file with KPDF or Acrobat Reader. Annoying.

I tried uninstalling and reinstalling Mozilla and its associated files. No luck. I'd tried changing the embedded file associations for .pdf files using KDE's File Associations tool, but Mozilla doesn't use those settings.

Checking the Help | About Plugins menu option showed that Mozilla used a shared library file called nppdf.so for displaying .pdf files. Checking the system for that file I found:

# locate nppdf.so
/opt/mozilla/lib/plugins/nppdf.so
/opt/MozillaFirefox/lib/plugins/nppdf.so
/usr/lib/browser-plugins/nppdf.so
/usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so

Since I also have Firefox installed, and since I can display .pdf files in Firefox, I checked the library files:

# ls -al /opt/mozilla/lib/plugins/nppdf.so
-rw-r--r-- 1 root root 129611 2004-06-08 12:58 /opt/mozilla/lib/plugins/nppdf.so

# ls -al /opt/MozillaFirefox/lib/plugins/nppdf.so
lrwxrwxrwx 1 root root 51 2005-06-09 11:36 /opt/MozillaFirefox/lib/plugins/nppdf.so -> /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so
# ls -al /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so
-rwxr-xr-x 1 root root 878568 Jul 27 15:10 /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so

Looks like Firefox uses the library that comes from Adobe, but Mozilla is using its own copy, from June 2004. Can it use the copy from Adobe? Let's try moving the old shared library out of the way and creating a symbolic link from the Adobe version of the library to the place where Mozilla expects to find the file:

# mv /opt/mozilla/lib/plugins/nppdf.so /opt/mozilla/lib/plugins/nppdf.so.orig

# ln -s /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so /opt/mozilla/lib/plugins/nppdf.so

# ls -al /opt/mozilla/lib/plugins/nppdf.so
lrwxrwxrwx 1 root root 51 Oct 27 09:02 /opt/mozilla/lib/plugins/nppdf.so -> /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so

# ls -al /opt/MozillaFirefox/lib/plugins/nppdf.so
lrwxrwxrwx 1 root root 51 Jun 9 11:36 /opt/MozillaFirefox/lib/plugins/nppdf.so -> /usr/X11R6/lib/Acrobat7/Browser/intellinux/nppdf.so

After stopping and re-starting Mozilla the problem was solved.

Over.  End of Story.  Go home now.

iambic@pigdog.org

T O P   S T O R I E S

GNUPG! You need to get some ENCRYPTION, BUB.

C L A S S I C   P I G D O G

Quickies