[PyQt] Static PyQt Initialization
Phil Thompson
phil at riverbankcomputing.com
Wed Mar 4 08:53:32 GMT 2009
On Tue, 3 Mar 2009 16:20:34 -1000, McKay Davis <mckay.cpp at gmail.com> wrote:
> Hi all,
>
> My setup: Windows 32-bit, Visual Studio 2008, PyQt 4.4.4, Qt 4.4.3, sip
> 4.7.9.
>
> I need to build SIP, Python and PyQt statically. I can get everything to
> build and link but I cannot figure out how to correctly initialize PyQt
so
> that Python finds it as a builtin module.
>
> This message:
>
> http://thread.gmane.org/gmane.comp.python.pyqt-pykde/14422/focus=14425
>
> covers what I need except for the exact syntax of the call to
> PyImport_ExtendInittab()
>
> I duplicated what this poster tried (w/ the same results):
>
> http://lists.kde.org/?l=pykde&m=116959724322512&w=2
>
> I added the following code to my python interpreter executable:
>
> extern void initsip(void);
> extern void initQtCore(void);
> extern void initQtGui(void);
> struct _inittab pyqt_inittab[] = {
> {"sip", initsip}
> {"PyQt4.QtCore", initQtCore},
> {"PyQt4.QtGui", initQtGui}
> {0, 0}
> };
> int main(int argc, char **argv)
> {
> PyImport_ExtendInittab(pyqt_inittab);
> Py_Initialize();
> ...
>
> The python interpeter executable builds and links, but running the
> PyQt/examples/tutorial/t1.pyw example script returns the error:
>
> Traceback (most recent call last):
> File "t1.pyw", line 7, in <module>
> from PyQt4 import QtGui
> ImportError: cannot import name QtGui
> [13350 refs]
>
> Can anybody please provide me the correct inittab entries for a static
> PyQt?
>From memory (so take with a pinch of salt) Python doesn't handle builtin
packages (as opposed to modules) without a patch. I don't know if that
patch has made it to current versions of Python. Check the archives of this
mailing list.
Phil
More information about the PyQt
mailing list