[cairo] Issues with Pango on OSX

Travis Griggs tgriggs at cincom.com
Thu Jul 8 08:38:42 PDT 2010


I have managed to get an independent build (i.e. not tied to using a  
MacPorts one) of both Cairo and Pango on OSX. I used the instructions  
located at:

http://cairographics.org/end_to_end_build_for_mac_os_x/

for Cairo, and basically the same approach for Pango. The library  
seems to kind of work. I can do things like allocate new Layouts, set  
parameters on them. But any time I try to query anything or get it to  
show_layout(), I get a SIGBUS error. I *think* (and I haven't tested  
this yet), that part of the problem may be the application of the  
final step in that page, to the Pango libraries. That's the part where  
we make the various library dependency paths all relative to the  
@executable_path, and then I move them out of their "installed"  
location.

The reason I think that, is that when I first starting making calls  
into it from my program, I start seeing lots of errors on stderr of  
the nature:

(process:82410): GLib-GObject-CRITICAL **: gtype.c:2711: You forgot to  
call g_type_init()
(process:82410): GLib-GObject-WARNING **: invalid cast from  
`PangoModule' to `<invalid>'
(process:82410): GLib-GObject-CRITICAL **: gtype.c:2766: You forgot to  
call g_type_init()
(process:82410): GLib-GObject-CRITICAL **: g_object_new: assertion  
`G_TYPE_IS_OBJECT (object_type)' failed
(process:82410): Pango-WARNING **: Failed to load Pango module '/Users/ 
travis/CairoPixmanBuild/lib/pango/1.6.0/modules/pango-basic-atsui.so'  
for id 'BasicScriptEngineATSUI'
(process:82410): GLib-GObject-WARNING **: cannot register existing  
type `PangoEngine'
(process:82410): GLib-GObject-CRITICAL **: g_type_register_static:  
assertion `parent_type > 0' failed
(process:82410): GLib-GObject-CRITICAL **: gtype.c:2711: You forgot to  
call g_type_init()
(process:82410): GLib-GObject-WARNING **: invalid cast from  
`PangoModule' to `<invalid>'
(process:82410): GLib-GObject-CRITICAL **: gtype.c:2766: You forgot to  
call g_type_init()
(process:82410): GLib-GObject-WARNING **: plugin '(unknown)' failed to  
register type '(null)'

None of that looks very good at all. In particular 5th one down, the  
one where it can't load the atsui module. The file is indeed at that  
location. Any idea what gives here? I do not build cairo with xlib or  
ft/fc, and when Pango runs it's configure, it says the only backend it  
is building is pangocairo.

Thanks for any help you can give on why I'm seeing these errors.

--
Travis Griggs
Objologist
"I did not have time to write you a short program, so I wrote you a  
long one instead."



More information about the cairo mailing list