killing pd with xkill gave this in gdb:<div><div>XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server &quot;:0.0&quot;</div><div>      after 2824 requests (2823 known processed) with 0 events remaining.</div>

<div><br></div><div>the &#39;where&#39; output remains the same afaict...</div><div><div><br></div><div>#0  0xb7fe1424 in __kernel_vsyscall ()</div><div>#1  0xb7d55e71 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64</div>

<div>#2  0xb7d5934e in abort () at abort.c:92</div><div>#3  0xb7d8c577 in __libc_message (do_abort=2, </div><div>    fmt=0xb7e658ac &quot;*** glibc detected *** %s: %s: 0x%s ***\n&quot;)</div><div>    at ../sysdeps/unix/sysv/linux/libc_fatal.c:189</div>

<div>#4  0xb7d96961 in malloc_printerr (action=&lt;value optimized out&gt;, </div><div>    str=&lt;value optimized out&gt;, ptr=0x8612798) at malloc.c:6283</div><div>#5  0xb7d9915d in _int_malloc (av=0xb7e893c0, bytes=24) at malloc.c:4396</div>

<div>#6  0xb7d9af53 in __libc_malloc (bytes=24) at malloc.c:3660</div><div>#7  0xb42514da in freenect_init () from /usr/local/lib/libfreenect.so.0.0</div><div>#8  0xb43824cf in fux_kinect::fux_kinect (this=0x8612638, argc=0, </div>

<div>    argv=0xbfffec4c) at fux_kinect.cpp:84</div><div>#9  0xb438272b in create_fux_kinect (s=0x8610598, argc=0, argv=0xbfffec4c)</div><div>    at fux_kinect.cpp:24</div><div>#10 0x080b40b9 in pd_typedmess (x=0x851384c, s=0x8610598, argc=0, </div>

<div>    argv=0xbfffec4c) at m_class.c:715</div><div>#11 0x080b8e8a in binbuf_eval (x=0x8611b80, target=&lt;value optimized out&gt;, </div><div>    argc=0, argv=0x8611468) at m_binbuf.c:726</div><div>#12 0x08076265 in canvas_objtext (gl=0x8611390, xpix=191, </div>

<div>    ypix=&lt;value optimized out&gt;, selected=0, b=0x8611b80) at g_text.c:94</div><div>#13 0x08076540 in text_setto (x=0x8611370, glist=0x8611390, </div><div>    buf=0x8611b70 &quot;fux_kinect&quot;, bufsize=10) at g_text.c:1397</div>

<div>---Type &lt;return&gt; to continue, or q &lt;return&gt; to quit---</div><div>#14 0x08097e09 in glist_deselect (x=0x8611390, y=0x8611370) at g_editor.c:253</div><div>#15 0x08096f16 in glist_noselect (x=0x8611390) at g_editor.c:268</div>

<div>#16 0x0809a21d in canvas_doclick (x=0x8611390, xpos=220, ypos=97, which=1, </div><div>    mod=&lt;value optimized out&gt;, doit=1) at g_editor.c:1422</div><div>#17 0x0809a5c7 in canvas_mousedown (x=0x8611390, xpos=220, ypos=97, which=1, </div>

<div>    mod=0) at g_editor.c:1434</div><div>#18 0x080b3f86 in pd_typedmess (x=0x8611390, s=0x851de48, argc=4, </div><div>    argv=0xbffff05c) at m_class.c:792</div><div>#19 0x080b3b6c in pd_typedmess (x=0x855b148, s=0x851de48, argc=4, </div>

<div>    argv=0xbffff05c) at m_class.c:813</div><div>#20 0x080b8e8a in binbuf_eval (x=0x8559e68, target=&lt;value optimized out&gt;, </div><div>    argc=0, argv=0x0) at m_binbuf.c:726</div><div>#21 0x080c4e07 in socketreceiver_read (x=0x853d650, fd=10) at s_inter.c:558</div>

<div>#22 0x080c5ed4 in sys_domicrosleep (microsec=&lt;value optimized out&gt;, </div><div>    pollem=&lt;value optimized out&gt;) at s_inter.c:196</div><div>#23 0x080c1120 in m_pollingscheduler () at m_sched.c:513</div><div>

#24 m_mainloop () at m_sched.c:563</div><div>#25 0x080c3ec9 in sys_main (argc=1, argv=0xbffff464) at s_main.c:304</div><div>#26 0x080cbbab in main (argc=1, argv=0xbffff464) at s_entry.c:32</div></div><div><br></div><br><div class="gmail_quote">

2011/11/11 tim vets <span dir="ltr">&lt;<a href="mailto:timvets@gmail.com">timvets@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><br><br>

<div class="gmail_quote"><div class="im">2011/11/11 Mathieu Bouchard <span dir="ltr">&lt;<a href="mailto:matju@artengine.ca" target="_blank">matju@artengine.ca</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


Le 2011-11-11 à 17:56:00, tim vets a écrit :<div><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I don&#39;t really remember the steps exactly, do you? <br>
</blockquote>
<br></div>
You could use the « svn diff » command, or if it&#39;s not from SVN, then unpack another copy (make sure you don&#39;t overwrite) and then do a diff of the two Makefiles with a command similar to :<br>
<br>
  diff -u fux_kinect_orig/Makefile fux_kinect_tim/Makefile<br>
<br>
if the newer lines appear as «-» instead of «+», you have to change the order of filenames (I get it wrong 50 % of the time)<div><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
That &#39;undefined symbol&#39; thing probably happened now only because I was trying with a new build of latest Gem, which doesn&#39;t seem to work itself here. I now replaced it back with my previous Gem.pd_linux, and it behaves like before: I try to create [fux_kinect], and pd hangs, without ever finishing creating the object, and without messages.<br>



</blockquote>
<br></div>
You can use gdb like this :<br>
<br>
  gdb --args pdextended fux_kinect-help.pd<br>
<br>
and then use the «run» command to start pd, and press Ctrl+c to force it to quit when it&#39;s hung, then use the «where» command to see a backtrace. Then post the backtrace here.<div><br>
<br></div></blockquote></div><div>ok, only difference here is that doing ctrl+c didn&#39;t kill pd (just &#39;^CQuit&#39; in the gdb prompt. doing &#39;where&#39; anyway now gives:</div><div><br></div><div>#0  0xb7fe1424 in __kernel_vsyscall ()</div>


<div>#1  0xb7d55e71 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64</div><div>#2  0xb7d5934e in abort () at abort.c:92</div><div>#3  0xb7d8c577 in __libc_message (do_abort=2, </div><div>    fmt=0xb7e658ac &quot;*** glibc detected *** %s: %s: 0x%s ***\n&quot;)</div>


<div>    at ../sysdeps/unix/sysv/linux/libc_fatal.c:189</div><div>#4  0xb7d96961 in malloc_printerr (action=&lt;value optimized out&gt;, </div><div>    str=&lt;value optimized out&gt;, ptr=0x8612798) at malloc.c:6283</div>


<div>#5  0xb7d9915d in _int_malloc (av=0xb7e893c0, bytes=24) at malloc.c:4396</div><div>#6  0xb7d9af53 in __libc_malloc (bytes=24) at malloc.c:3660</div><div>#7  0xb42514da in freenect_init () from /usr/local/lib/libfreenect.so.0.0</div>


<div>#8  0xb43824cf in fux_kinect::fux_kinect (this=0x8612638, argc=0, </div><div>    argv=0xbfffec4c) at fux_kinect.cpp:84</div><div>#9  0xb438272b in create_fux_kinect (s=0x8610598, argc=0, argv=0xbfffec4c)</div><div>    at fux_kinect.cpp:24</div>


<div>#10 0x080b40b9 in pd_typedmess (x=0x851384c, s=0x8610598, argc=0, </div><div>    argv=0xbfffec4c) at m_class.c:715</div><div>#11 0x080b8e8a in binbuf_eval (x=0x8611b80, target=&lt;value optimized out&gt;, </div><div>


    argc=0, argv=0x8611468) at m_binbuf.c:726</div><div>#12 0x08076265 in canvas_objtext (gl=0x8611390, xpix=191, </div><div>    ypix=&lt;value optimized out&gt;, selected=0, b=0x8611b80) at g_text.c:94</div><div>#13 0x08076540 in text_setto (x=0x8611370, glist=0x8611390, </div>


<div>    buf=0x8611b70 &quot;fux_kinect&quot;, bufsize=10) at g_text.c:1397</div><div>---Type &lt;return&gt; to continue, or q &lt;return&gt; to quit---</div><div>#14 0x08097e09 in glist_deselect (x=0x8611390, y=0x8611370) at g_editor.c:253</div>


<div>#15 0x08096f16 in glist_noselect (x=0x8611390) at g_editor.c:268</div><div>#16 0x0809a21d in canvas_doclick (x=0x8611390, xpos=220, ypos=97, which=1, </div><div>    mod=&lt;value optimized out&gt;, doit=1) at g_editor.c:1422</div>


<div>#17 0x0809a5c7 in canvas_mousedown (x=0x8611390, xpos=220, ypos=97, which=1, </div><div>    mod=0) at g_editor.c:1434</div><div>#18 0x080b3f86 in pd_typedmess (x=0x8611390, s=0x851de48, argc=4, </div><div>    argv=0xbffff05c) at m_class.c:792</div>


<div>#19 0x080b3b6c in pd_typedmess (x=0x855b148, s=0x851de48, argc=4, </div><div>    argv=0xbffff05c) at m_class.c:813</div><div>#20 0x080b8e8a in binbuf_eval (x=0x8559e68, target=&lt;value optimized out&gt;, </div><div>


    argc=0, argv=0x0) at m_binbuf.c:726</div><div>#21 0x080c4e07 in socketreceiver_read (x=0x853d650, fd=10) at s_inter.c:558</div><div>#22 0x080c5ed4 in sys_domicrosleep (microsec=&lt;value optimized out&gt;, </div><div>


    pollem=&lt;value optimized out&gt;) at s_inter.c:196</div><div>#23 0x080c1120 in m_pollingscheduler () at m_sched.c:513</div><div>#24 m_mainloop () at m_sched.c:563</div><div>#25 0x080c3ec9 in sys_main (argc=1, argv=0xbffff464) at s_main.c:304</div>


<div>#26 0x080cbbab in main (argc=1, argv=0xbffff464) at s_entry.c:32</div><div>gr,</div><div>Tim</div><div class="im"><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I could probably look up the Valgrind output, if it&#39;s relevant. gr, Tim<br>
</blockquote>
<br></div>
For a hang, it&#39;s better to use GDB.<br>
<br>
GDB and Valgrind are largely complementary.<br>
<br>
There&#39;s also a GUI for Valgrind if it helps you. I don&#39;t know about GUIs for GDB (except the quite old DDD), but there might be one or several.<div><div></div><div><br>
<br>
 ______________________________<u></u>______________________________<u></u>__________<br>
| Mathieu BOUCHARD ----- téléphone : <a href="tel:%2B1.514.383.3801" value="+15143833801" target="_blank">+1.514.383.3801</a> ----- Montréal, QC</div></div></blockquote></div></div><br>
</blockquote></div><br></div>