I ran across this when rebuilding: /opt/gnome2/lib/libgtk-x11-2.0.so: undefined reference to `cairo_pdf_surface_set_dpi' collect2: ld returned 1 exit status make[2]: *** [pdf2png] Error 1 make[2]: Leaving directory `/export/home/b/newrenTemp/gnome/cairo/test' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/export/home/b/newrenTemp/gnome/cairo' make: *** [all] Error 2
Looks related to http://lists.freedesktop.org/archives/cairo/2006-May/006871.html
Created attachment 5872 [details] [review] Patch to track addition of cairo_surface_set_fallback_resolution It's even more related to this from today: http://article.gmane.org/gmane.comp.lib.cairo/6924 [*] Anyway, this is a change only to API that has never appeared in a stable release of cairo, and I believe the calling GTK+ code has also not yet appeared in a stable release. I'll attach a patch to fix GTK+, and close this report as NOTOURBUG. -Carl [*] I would have given a link to that in the archives at cairographics.org, but stupid pipermail eats the message up: http://lists.freedesktop.org/archives/cairo/2006-June/007101.html
As discussed above, this needs to be fixed in GTK+. -Carl
http://bugzilla.gnome.org/show_bug.cgi?id=344512 exists about the needed gtk+ updates. As for cairo, since the cairo tests depend on gtk+ which in turn depend on cairo, this cyclic dependency will make it hard for many users to fix their build. Is there any easy way to detect this case and not build the tests? (or at least a simple configure switch that can be used to disable the tests? -- I manually edited Makefile.am to remove this cyclicness and get a working build again)
Thanks for the clarification. I've clarified the bug title and reopened this. I've also just pushed out a change to cairo that should help with the current problem. What it does (for gcc >= 2 and elf-based systems at least) is provide the old symbol names in the cairo build so that the circular dependency will hopefully not lead to a build failure. But eliminating the circular dependency completely would be even better. The solution that I would like to see is that "make" should build cairo only, (no tests), so the ciruclar stuff would only show up when explicitly running the tests with "make check". I just haven't found the right automake magic to make that happen. If someone who knows more about that than me could take a look at this, that would be very appreciated. -Carl
Behdad just fixed cairo's Makefiles so that "make check" will depend on things like poppler but that "make" never will. This should make it quite easy for anyone to avoid a circular dependency. Here's the commit of interest: http://gitweb.cairographics.org/?p=cairo;a=commit;h=72e7667ed904b93475d7e4540778c498aa781cdf -Carl
Awesome, thanks!
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.