Re: missing entry point cairo_ft_font_face_create_for_pattern



I'm getting the following error when starting my application, "The procedure
entry point cairo_ft_font_face_create_for_pattern could not be located in
the dynamic link library libcairo-2.dll"
Doing an nm on all the dll's shows that the symbol only shows up in
libpangocairo-1.0-0.dll:

nm is in general the wrong tool to use for DLLs. What you are
interested in is what symbols are exported from or imported into a
DLL. That is what the error message above refers to. What nm is
displaying, I think, are debugging symbols which are entirely optional
and can be stripped from the DLL with no effect on its behaviour
(except that it makes debugging harder, of course).

Use objdump -p and look for the import and export tables, which are
what actually direct how a DLL interacts with executables that load it
and with any other DLLs that it in turn depends on.

Your problem seems to be that you have a libpangocairo DLL that is
built with the fontconfig(+freetype)-based pango backend (i.e. a
libpangocairo as typically used on X11), while your libcairo DLL does
not have the freetype font backend (but presumably just the win32 one,
which is all that gtk+ and pango normally need on Windows). Some
serious confusion is going on...

--tml



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]