[cairo] Problems with GTK+ CAIRO and POPPLER mingw build

Maarten Bosmans mkbosmans at gmail.com
Thu Sep 2 02:29:39 PDT 2010


2010/9/2 Christoph Derigo <derchriss82 at gmail.com>:
> Hello !
> I do a program in gtk+ and cairo (mostly goocanvas) which should work on
> win32.
> What i have done so far was useing stable cairo and gtk and goocanvas
> together, this works quite well for my stuff.( some rendering bugs on win32
> with text had occured )
> Now i have to do some pdf stuff, with printing and poppler came to my mind.
> I found out that poppler in the git version does quite a good job, i updated
> my cairo to git for it to compile.
> What I did was compiled the complete gtk+ stack from git now ( i know gtk3
> is not finished but i gave it a try just to make sure bugs are not fixed
> already )
> and after seeing the problems still remain i went back to the gtk stable
> stack also seeing the same problems.
> Next i did try use the precompiled gtk+ bundle from this side:
> http://ftp.gnome.org/pub/GNOME/binaries/win32/gtk+/2.20/gtk+-bundle_2.20.1-20100817_win32.zip
> => this seems to work. but if i replace the precompiled cairo in her with
> the git version the same problems occur here to.

This is probably the same problem I described a couple of days ago on this list.
The Gtk+ bugreport is here: https://bugzilla.gnome.org/show_bug.cgi?id=628291

You could wait till a patch lands in gtk 2.22 or apply one of the
patches attached to the bugreport and build gtk yourself, both patches
solve the problem.

> for all my tries i linked against libpng14 ( from git )
>
> to reproduce my problems:
> 0. have a msys mingw install with updated packages ( gcc 4.5 )
> 1. use the bundle from ftp.gnome.org
> 2. compile libpng14 from git
> 3. use libpng14 to link with cairo git or any other cairo version
> 4. compile poppler git ( not needed for the bug repro )
>
> Here the results of my tries:
> ============================================================================================
> cairo git and poppler git work well, display and printing works!
> cairo git and gtk+ does NOT work. some icons disappear when mouse over and
> so on
> cairo git and goocanvas works perfectly.
> ============================================================================================
> cairo unstable version 1.9.6 and poppler work well, display and printing
> works!
> cairo unstable version 1.9.6 and gtk+ WORK.
> cairo unstable version 1.9.6 and goocanvas do not work correctly ( offsets
> are wrong, png loading does not work ).
> ============================================================================================
>
> somehow each version newer than cairo 1.9.6 seems to mess with gtk+ (on
> win32, i did not test on other systems), but i saw many source changes
> between 1.9.6 and 1.9.8 so someone can help me out explaining what i can do
> about this,
> as the new git version of cairo seems to do a good job exept for the actual
> gtk+.

You don't have to use all the git versions to get it running. For
example the latest released version of Poppler 0.14 and libpng14 works
fine too. I usually get the packages I don't want to compile myself
from the BuildService.
https://build.opensuse.org/project/packages?project=windows%3Amingw%3Awin32

Maarten


More information about the cairo mailing list