Monday, 20 December 2010

Evince failing to open PDF files

I noticed that Evince was suddenly failing to open PDF files with the error message:

File type PDF document (application/pdf) is not supported

Trying to debug the problem, I tried opening a PDF document through the command line and got the following error message.


(evince:1514): EvinceDocument-WARNING **: /usr/lib64/libpoppler-glib.so.5: undefined symbol: cairo_surface_set_mime_data

(evince:1514): EvinceDocument-WARNING **: Cannot load backend 'pdfdocument' since file '/usr/lib64/evince/3/backends/libpdfdocument.so' cannot be read.

(evince:1514): EvinceDocument-WARNING **: /usr/lib64/evince/3/backends/libpdfdocument.so: undefined symbol: cairo_region_union_rectangle

(evince:1514): EvinceDocument-WARNING **: Cannot load backend 'pdfdocument' since file '/usr/lib64/evince/3/backends/libpdfdocument.so' cannot be read.


Now it suddenly makes sense! Fedora 14 has a broken implementation of Cairo graphics library which causes desktop themes to look absolutely ghastly. To get over the problem, I downgraded the Cairo libraries to F13 versions. However, this now seems to have broken Evince. Sure enough; upgrading cairo back to F14 versions made evince work again. Now I am stuck between having a working PDF reader and a nice desktop. It sure is a tough choice!