(Just realized I didn't send this to the list)
I am not a programmer, I would not know where to look or what to look for to find out for sure.
I do know what I've been told or what's obvious:
- config finds poppler if it's installed but fails to compile if the header file CairoOutputDev.h is not installed - per poppler people, CairoOutputDev.h is private and should not be installed - per poppler people, the appropriate way to hook into poppler is through the poppler glib bindings - Inkscape doesn't use the glib bindings to prevent further dependencies - some distros (at least Gentoo, likely others) install poppler without the private header CairoOutputDev.h, so compile breaks unless it's manually installed
So from what I understand, Inkscape should be hooking into poppler through the glib bindings rather than through the private header file if we want to be compatible with the way poppler is built and meant to be installed.
Sorry to be a pain in the butt about this, but I really think this needs to be fixed to avoid some future bugs. I remember that someone told me that not all the functions we need are available in the bindings, but I think the actual reason was the avoidance of additional deps.
Thanks for taking the time to ask about it, Ted! I know everyone's busy getting the release ready (in addition to real life), and your time is important, so really, thanks.
JF
Ted Gould wrote:
On Wed, 2008-01-30 at 15:00 -0600, Joshua Facemyer / Impressus Art wrote:
The problem is not that they *don't have* poppler, the problem is that some distros don't install the private header files, which correct according to poppler design. So poppler is found, but the compile breaks because it's looking for a header file that's missing.
The appropriate way to use poppler in this circumstance is through poppler-glib. Then, if dependencies (such as poppler-glib) are a concern for a particular distro, they can turn off poppler support. However, if Inkscape wants to have pdf support by default, it should require the appropriate packages by default.
This should also save Inkscape devs trouble in the future when poppler internals change - the glib functions will remain constant.
So, are we correctly using the right functions and have the wrong dependency or we're not using the right functions?
--Ted