Le jeudi 11 décembre 2008 à 12:42 +0100, Dag Wieers a écrit : > > - see if you get the same segfault with pigment examples > > I verified the checks before, but since I build on a remote system I did > not try the examples. All examples worked except the imaging example: > > ------ > [EMAIL PROTECTED] .libs]$ ./imaging ~/Photos/ > > ** (process:4927): CRITICAL **: pgm_imaging_linear_alpha_gradient: > assertion `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_bits_per_sample: > assertion `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_width: assertion > `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_height: assertion > `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_rowstride: assertion > `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_has_alpha: assertion > `pixbuf != NULL' failed > > (process:4927): GdkPixbuf-CRITICAL **: gdk_pixbuf_get_pixels: assertion > `pixbuf != NULL' failed > > (process:4927): GLib-GObject-CRITICAL **: g_object_unref: assertion > `G_IS_OBJECT (object)' failed > > (process:4927): GLib-GObject-CRITICAL **: g_object_unref: assertion > `G_IS_OBJECT (object)' failed
This is totally unrelated: - the imaging example takes an image file as a parameter, not a directory, this is why you have these assertion errors. - might not be that a good idea to run the example from the .libs directory > ------ > > And now that I remember, CentOS ships with cairo 1.2.4, while configure > does not build the pigment imaging support unless you have at least cairo > 1.4. Unfortunately configure does not clearly said why imaging support was > dropped. I forced configure to build imaging support with cairo 1.2.4. > > I guess that is related to the segfault. See above. That might be a problem and trigger other segfaults, but not that one. > > > > - try to ensure you have the debugging symbols for about all the libs > > involved, run gdb --args elisa, type "run", wait for it to segfault, > > type "thread apply all backtrace" and send us the output (on the mailing > > list or in a bug report). > > I don't have all the debugging symbols, but I can already send you this: > > ------ (...) > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread -1209035072 (LWP 5012)] > 0x03ef2b23 in gst_element_register () from /usr/lib/libgstreamer-0.10.so.0 Aha! Looking at the stuff below, this happens in the main thread, and is called by some python code. But gst.element_register() is broken in old versions of gst-python. The only such register we still do is in elisa-plugins/elisa/plugins/gstreamer/changestride.py (line 125), and it is not needed since we don't use that element from the registry, but we instantiate it directly (and we don't use it on linux anyway). So my advice is: comment out the call to gst.element_register() and that segfault should disappear. I'm about to do that in trunk. > (gdb) thread apply all backtrace > > Thread 4 (Thread 29264784 (LWP 5021)): > #0 0x001dd402 in __kernel_vsyscall () > #1 0x00d9d25e in [EMAIL PROTECTED] () from /lib/libpthread.so.0 > #2 0x0400cf3b in PyThread_acquire_lock () from /usr/lib/libpython2.4.so.1.0 > #3 0x03fe3898 in PyEval_AcquireThread () from /usr/lib/libpython2.4.so.1.0 > #4 0x0401128b in initthread () from /usr/lib/libpython2.4.so.1.0 > #5 0x00d9745b in start_thread () from /lib/libpthread.so.0 > #6 0x002aee5e in clone () from /lib/libc.so.6 > > Thread 3 (Thread 82361232 (LWP 5019)): > #0 0x001dd402 in __kernel_vsyscall () > #1 0x002a7299 in ioctl () from /lib/libc.so.6 > #2 0x006673de in drmWaitVBlank () from /usr/lib/libdrm.so.2 > #3 0x05e2d3b5 in driWaitForMSC32 () from /usr/lib/dri/i915_dri.so > #4 0x05e2d7f5 in driGetDefaultVBlankFlags () from /usr/lib/dri/i915_dri.so > #5 0x00b94ab7 in glXCreateGLXPixmapWithConfigSGIX () from /usr/lib/libGL.so.1 > #6 0x0088d118 in pgm_glx_backend_wait_for_vblank (backend=0x982c838) at > pgmglxbackend.c:2285 > #7 0x0088bfba in pgm_backend_wait_for_vblank (backend=0x982c838) at > pgmbackend.c:367 > #8 0x00888ec4 in update_cb (data=0x982b060) at pgmcontext.c:1136 > #9 0x035db846 in g_source_get_current_time () from /lib/libglib-2.0.so.0 > #10 0x035db272 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 > #11 0x035de24f in g_main_context_check () from /lib/libglib-2.0.so.0 > #12 0x035de5f9 in g_main_loop_run () from /lib/libglib-2.0.so.0 > #13 0x0088acb0 in render_loop (data=0x982b060) at pgmcontext.c:1421 > #14 0x035f8eef in g_thread_create_full () from /lib/libglib-2.0.so.0 > #15 0x00d9745b in start_thread () from /lib/libpthread.so.0 > #16 0x002aee5e in clone () from /lib/libc.so.6 > > Thread 2 (Thread -1219445872 (LWP 5018)): > #0 0x001dd402 in __kernel_vsyscall () > #1 0x00d9d25e in [EMAIL PROTECTED] () from /lib/libpthread.so.0 > #2 0x0400cf3b in PyThread_acquire_lock () from /usr/lib/libpython2.4.so.1.0 > #3 0x04010eae in initthread () from /usr/lib/libpython2.4.so.1.0 > #4 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #5 0x03fe89cd in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #6 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #7 0x03fe8436 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #8 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #9 0x03fe8436 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #10 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #11 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #12 0x03f9bcba in PyClassMethod_New () from /usr/lib/libpython2.4.so.1.0 > #13 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #14 0x03f8a388 in PyClass_IsSubclass () from /usr/lib/libpython2.4.so.1.0 > #15 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #16 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #17 0x040112a4 in initthread () from /usr/lib/libpython2.4.so.1.0 > #18 0x00d9745b in start_thread () from /lib/libpthread.so.0 > #19 0x002aee5e in clone () from /lib/libc.so.6 > > Thread 1 (Thread -1209035072 (LWP 5012)): > #0 0x03ef2b23 in gst_element_register () from /usr/lib/libgstreamer-0.10.so.0 > #1 0x006e9004 in _wrap_gst_element_register (self=0x0, args=0xa23570c, > kwargs=0x0) at ./gst.override:684 > #2 0x03fae46d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #3 0x03fe89cd in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #4 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #5 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #6 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #7 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #8 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #9 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #10 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #11 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #12 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #13 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #14 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #15 0x03fe53c7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #16 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #17 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #18 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #19 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #20 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #21 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #22 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #23 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #24 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #25 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #26 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #27 0x03fe53c7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #28 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #29 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #30 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #31 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #32 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #33 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #34 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #35 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #36 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #37 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #38 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #39 0x03fe53c7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #40 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #41 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #42 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #43 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #44 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #45 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #46 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #47 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #48 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #49 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #50 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #51 0x03fe53c7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #52 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #53 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #54 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #55 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #56 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #57 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #58 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #59 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #60 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #61 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #62 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #63 0x03fe53c7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #64 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #65 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #66 0x03ffe75d in PyImport_ExecCodeModuleEx () from > /usr/lib/libpython2.4.so.1.0 > #67 0x03ffed03 in PyImport_ImportFrozenModule () from > /usr/lib/libpython2.4.so.1.0 > #68 0x03fffdc3 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #69 0x04000282 in PyImport_ReloadModule () from /usr/lib/libpython2.4.so.1.0 > #70 0x040004e6 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0 > #71 0x03fdff5e in _PyBuiltin_Init () from /usr/lib/libpython2.4.so.1.0 > #72 0x03fae49d in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 > #73 0x03fe89cd in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #74 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #75 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #76 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #77 0x03fe8436 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #78 0x03f933cb in PyDescr_NewMethod () from /usr/lib/libpython2.4.so.1.0 > #79 0x03fc239c in PyType_IsSubtype () from /usr/lib/libpython2.4.so.1.0 > #80 0x03f92308 in PyDictProxy_New () from /usr/lib/libpython2.4.so.1.0 > #81 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #82 0x03fe6558 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #83 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #84 0x03f9bd90 in PyClassMethod_New () from /usr/lib/libpython2.4.so.1.0 > #85 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #86 0x03fe71cc in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #87 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #88 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #89 0x03f9bcba in PyClassMethod_New () from /usr/lib/libpython2.4.so.1.0 > #90 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #91 0x03f8a388 in PyClass_IsSubclass () from /usr/lib/libpython2.4.so.1.0 > #92 0x03f83d87 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0 > #93 0x03fe349c in PyEval_CallObjectWithKeywords () from > /usr/lib/libpython2.4.so.1.0 > #94 0x03f8490c in PyObject_CallObject () from /usr/lib/libpython2.4.so.1.0 > #95 0x00e7300a in [EMAIL PROTECTED] () from > /usr/lib/python2.4/site-packages/gtk-2.0/gobject/_gobject.so > #96 0x035db846 in g_source_get_current_time () from /lib/libglib-2.0.so.0 > #97 0x035db272 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 > #98 0x035de24f in g_main_context_check () from /lib/libglib-2.0.so.0 > #99 0x035de5f9 in g_main_loop_run () from /lib/libglib-2.0.so.0 > #100 0x00e7e1ec in [EMAIL PROTECTED] () from > /usr/lib/python2.4/site-packages/gtk-2.0/gobject/_gobject.so > #101 0x03fe874a in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #102 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #103 0x03fe8436 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #104 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #105 0x03fe8436 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #106 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #107 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #108 0x03fe853f in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0 > #109 0x03fe9c76 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 > #110 0x03fe9d03 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0 > #111 0x04006ad8 in Py_CompileString () from /usr/lib/libpython2.4.so.1.0 > #112 0x040081e8 in PyRun_SimpleFileExFlags () from > /usr/lib/libpython2.4.so.1.0 > #113 0x040088ca in PyRun_AnyFileExFlags () from /usr/lib/libpython2.4.so.1.0 > #114 0x0400f2d5 in Py_Main () from /usr/lib/libpython2.4.so.1.0 > #115 0x080485b2 in main () > ------ > > > > Hope Elisa will run on CentOS eventually :) > > I hope it is possible. > > Would it be worthwhile to add the patch to "support" incompatible > python-dbus versions in one form or another ? I have no idea how hard this would be, nor if someone has the time to do it, but patches doing this would most certainly be considered. > > Thanks in advance, No problem, thanks for the backtrace. Guillaume
