[PyKDE] Are Python extenstions built with SIP and Boost.Python in compatible?

Paul F. Kunz Paul_Kunz at SLAC.Stanford.EDU
Sun Dec 8 03:43:01 GMT 2002

>>>>> On Sun, 08 Dec 2002 02:17:24 +0000, Phil Thompson <phil at river-bank.demon.co.uk> said:

> SIP takes over the class and instance getattr functions - it patches
> the class and instance type objects. It does this to implement a
> "lazy" getattr so that the Python object wrapping a C++ method is
> only created when that method is referenced. PyQt contains over 5000
> methods - if this technique wasn't used then both the startup time
> of a PyQt application, and the memory it consumed, would make it
> unusable.

> The real problem is that SWIG/Boost/SIP have to agree on how they
> are going to represent a pointer to a C++ object - or at least you
> have to provide code that converts between the different
> representations.

> Also, I don't believe (although I'd be happy to be proved wrong)
> that you can produce production quality bindings for Qt derived
> classes using anything other than SIP. For example, how do you
> handle object ownership issues?

   Well I'm far from export in understanding the ownership issues.
Boost.Python appears to be quite concerned about it and gives me the
options of who ownes the object I return to Python in ways I do not
yet completely understand.

   Meanwhile, Im' in a mess.   One team developed  part of the
application with PyQt.   My team developed the other part in C++ using
Boost.Python. On the wedding day, total disastrer.

More information about the PyQt mailing list