nppdf.so: undefined symbol: XtCalloc

Bug #41787 reported by Kai F. Lahmann
48
Affects Status Importance Assigned to Milestone
acroread (Ubuntu)
Medium
Unassigned

Bug Description

this appears in a console, if I try to load an PDF inside Firefox.

LoadPlugin: failed to initialize shared library /usr/lib/Adobe/Acrobat7.0/Browser/intellinux/nppdf.so [/usr/lib/Adobe/Acrobat7.0/Browser/intellinux/nppdf.so: undefined symbol: XtCalloc]

Revision history for this message
Peter Meiser (meiser79) wrote :

Me too. We need to upgrade to 7.0.5 to get that fixed.

Changed in acroread:
status: Unconfirmed → Confirmed
Revision history for this message
Conrad Knauer (atheoi) wrote :

Version 7.0.8 is out now.

I have confirmed (based on reports originally posted in the forums; e.g. on http://ubuntuforums.org/showthread.php?t=187973) that if you download the Linux version of Adobe Reader from http://www.adobe.com/products/acrobat/readstep2.html and extract nppdf.so and use it to replace the one installed by the mozilla-acroread package (/usr/lib/Adobe/Acrobat7.0/Browser/intellinux/nppdf.so), PDFs work inside Firefox again.

FWIW, until an upgraded DEB is available to Dapper users (e.g. through backports), I have made a tar.gz (~2 MB) from that file so people don't have to download the entire 7.0.8 archive from Adobe (~40 MB)

http://members.shaw.ca/Limulus/files/nppdf.so.tar.gz

Revision history for this message
Jeff Balderson (jbalders) wrote :

Try this. Start Firefox from a command prompt:

LD_PRELOAD=/usr/lib/libXt.so.6 /usr/lib/firefox/firefox

That should temporarily fix the problem until you exit firefox. The problem appears to be that nppdf.so expects that libXt.so to already be loaded, which is bad practice.

A hack that will work around the problem (but load more, possibly unnecessary libraries, depending on what you're doing), again at a command prompt:

1) sudo cp -a /usr/lib/firefox/firefox /usr/lib/firefox/firefox.old
2) sudo vi /usr/lib/firefox/firefox
3) search for:
export LD_LIBRARY_PATH
4) change it to:
export LD_LIBRARY_PATH
LD_PRELOAD=/usr/lib/libXt.so.6
export LD_PRELOAD

Save the file and make sure firefox is completely closed. When you start up Firefox the next time, you should find that Acrobat reader works, at least until an update comes out that overwrites the firefox script.

Revision history for this message
Jens Rühmkorf (ruehmkorf) wrote :

Use dpkg-divert to add a wrapper-script that sets LD_PRELOAD as suggested:

# dpkg-divert --add --rename --divert /usr/lib/firefox/firefox.real /usr/lib/firefox/firefox
# cat <<EOF > /tmp/firefox
#!/bin/sh

# fixes bug #41787
export LD_PRELOAD=/usr/lib/libXt.so.6
exec /usr/lib/firefox/firefox.real "$@"
EOF
# mv -i /tmp/firefox /usr/lib/firefox/firefox
# chmod 755 /usr/lib/firefox/firefox

Daniel T Chen (crimsun)
Changed in acroread:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers