Possibly try using -ggdb or maybe even -gstabs+, -feliminate-unused-debug-symbols or a combination to give the desired debug information without causing the crashes.
The
Python C API documentation mentions in it's memory management section that you should not use the C library memory management functions (like malloc) on python objects but I assume you are not doing this?
If you have not looked at this reference it may be useful anyway.I would be interested in the results if you manage to track this down.
Edit : Just thought I'd add this.. I've recently been looking at the cython method of writing C extensions for python - you may find it useful. You can find it
here if you are interested.