> -----Original Message-----
> From: "Martin v. Löwis" [mailto:mar...@v.loewis.de]
> Sent: 15. júní 2010 21:20
> To: Kristján Valur Jónsson
> Cc: python-dev@python.org
> Subject: Re: [Python-Dev] debug and release python
> 
> Am 15.06.2010 14:48, schrieb Kristján Valur Jónsson:
> > What I mean is that a third party software vendor supplies a
> > foobarapp.pyd and a foobarapp_d.pyd dlls that link to python2x.dll
> > and python2x_d.dll respectively.  But the latter will have been
> > compiled to match a certain settings of the objimpl.h header, which
> > may not match whatever is being used to build the local
> > python2x_d.dll.  And thus, you get strange and hard to debug linker
> > errors when trying to load external libraries.
> 
> Ok. But your proposed change doesn't fix that, right?
> 
> I.e. even with the change, it would *still* depend on objimpl.h (and
> other) settings what ABI this debug DLL exactly has.
> 
I think it does.
My proposal was perhaps not clear:  For existing python versions, always export 
_PyObject_DebugMalloc et al. irrespective of the WITH_PYMALLOC and 
PYMALLOC_DEBUG settings.  (PyObject_Malloc()) is always exported, even for 
builds without WITH_PYMALLOC)
On new python versions, remove the _PyObject_DebugMalloc from the ABI.  Make 
the switch internal to obmalloc.c, so that you can turn on the debug library by 
recompiling pythonxx_d.dll only (currently, you have to recompile the .pyd 
files too!)

> But there are tons of ABI changes that may happen in a debug build.
> If you want to cope with all of them, you really need to recompile the
> source of all extensions.
Are there?  Can you give me an example?  I thought we were careful to keep the 
interface shown to pyd files constant regardless of configuration settings.

K
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to