#3 gdb
your code crashes? or does something bonkers? gdb to the rescue!
gdb can be a tricky beast, and there is much to learn, but even if you
only use the "backtrace" feature, you get at least an idea which line
causes the crash (which can help tremendously).
two things to keep in mind:
a) you must compile the code to be debugged with "-g", so the debugging
symbols don't get stripped away.
for whatever reasons, the pd-lib-builder Makefile doesn't set this by
default (most likely size- or speed-constraints; there was some
discussion, i don't remember the details), unless you build with "make
alldebug"
b) you should run Pd with "-nrt" inside the debugger, unless you want a
stream of "watchdog: signaling Pd" message to garble all your output.