Python-2.1 Debug libs zip is missing tcl &tk debug libs

Alex Martelli aleaxit at yahoo.com
Sun Apr 22 17:55:44 EDT 2001


"Kevin Rodgers" <kevinmrodgers at home.com> wrote in message
news:ASHE6.43930$EN.1398920 at news1.rdc1.sdca.home.com...
    [snip]
> I'm working on embedding Python on Win32, and I just use the binary
> installer for Python.  But I don't use the Windows "debug" mode anyway;
I'd
> have to build debug versions of Numeric, Tkinter, Tcl/Tk, BLT, ad nauseam.

Seconded!!!  Further, any OTHER library you might be using in your
app, even ones totally unrelated to Python, should also be rebuilt in
'debug mode' (specifically: so it uses the "Debug multithreaded DLL",
MSVCRTD.DLL, as its C Runtime).  A major bother.

> Instead, I use the "release" project and change the settings so that it
> generates full debug information.  Since the errors I find during
debugging
> are invariably in my code, not Python's, I don't need to trace into Python
> anyway.

...nor presumably in Microsoft's C Runtime (which is the real purpose
of MSVCRTD.DLL -- it also provides slightly better diagnostics for
some pointers overwritings and memory leaks, but not really good
ones anyway -- numega's boundschecker, devpartner, or however
they're calling it this week is advisable if you DO need help for the
diagnosis of such issues).


> real-programmers-debug-using-print-statements-ly yr's-kevin

...or the Windows equivalent, the OutputDebugString API -- you
can also call it in Python, with win32all extensions.  With the help
of some auxiliary utility or system-level debugger, it lets you see
messages from your code *no matter how* it may be running --
as a COM server, NT service, or any other situation where using
something as invasive as an interactive debugger is out of the
question (and you typically don't have stdout or stderr pointing
to anything usable -- besides, with OutputDebugString you can
see messages from various languages correctly intermixed in the
order in which they were sent, etc).  The skill a typical "real
programmer" develops to put in just the right amount of
debug-calls with just the right amount of information in each
then really comes in handy, of course!-)


Alex






More information about the Python-list mailing list