[PyQt] Using SWIG to wrap application written in QT

Matt Newell newellm at blur.com
Wed Aug 28 22:54:57 BST 2013

On Wednesday, August 28, 2013 01:01:43 PM Kenneth Miller wrote:
> ping. :)
> ________________________________
>  From: Kenneth Miller <kennethadammiller at yahoo.com>
> To: "pyqt at riverbankcomputing.com" <pyqt at riverbankcomputing.com>
> Sent: Monday, August 26, 2013 5:25 PM
> Subject: Using SWIG to wrap application written in QT
> So I have this application that I'm writing that uses the Qt libraries. I
> want to wrap the my application and all of it's objects so that I can call
> it from a scripting language quickly, be it python, or ocaml or whatever.
> Anyway, for the last bit I've been trying to get a module compiled that
> will allow me to dynamically call into the classes & functions that I've
> defined. SWIG seems to work right, and recently I even got my own self
> defined class within a module from my C++ source to run, although it
> segfaulted and I have yet to find out exactly why. 
> Can this be done? I mean, I was wondering it would be more appropriate that
> I use SIP. One of the problems that I'm facing (I think) is that some
> arguments to my classes and functions are Qt objects. But I can't export
> those functions in my SWIG module without also writing a wrapper to the Qt
> objects manually (is that right?). I'm very new to SWIG, but I definitely
> need the speed of a scripting language for my development, because the
> compile cycle with Qt and C++ is slow. In addition, I'm kind of
> considering SIP in parallel, so I need advice as to which is more
> appropriate. 
> Can anybody advise me what the best route is in order to get what I want?
> SIP or SWIG?

You'll definitely want to use sip.  PyQt sources(check the sip dir) themselves 
are a good reference on how to do things.


More information about the PyQt mailing list