[PyQt] Troubleshooting when unable to get SIP type definition

Arve Knudsen arve.knudsen at gmail.com
Tue Jul 28 15:53:49 BST 2009


I can confirm that the reason was a build inconsistency (wrong version SIP
header being included). As such, some debugging help from SIP could probably
have saved me some time (and next time something like this happens). For
instance, maybe one could adjust SIP's loglevel so it would output error
messages when an incompatible PyQt is loaded (or whatever goes wrong here).

Arve

On Tue, Jul 28, 2009 at 4:17 PM, Arve Knudsen <arve.knudsen at gmail.com>wrote:

> On Tue, Jul 28, 2009 at 4:12 PM, Phil Thompson <
> phil at riverbankcomputing.com> wrote:
>
>> On Tue, 28 Jul 2009 16:03:05 +0200, Arve Knudsen <arve.knudsen at gmail.com>
>> wrote:
>> > On Tue, Jul 28, 2009 at 3:53 PM, Phil Thompson
>> > <phil at riverbankcomputing.com>wrote:
>> >
>> >> On Tue, 28 Jul 2009 15:38:09 +0200, Arve Knudsen
>> <arve.knudsen at gmail.com>
>> >> wrote:
>> >> > Hi
>> >> >
>> >> > Are there any good troubleshooting techniques when unable to get a
>> type
>> >> > definition from the SIP API? Sometimes, when there are
>> inconsistencies
>> >> > in
>> >> > my
>> >> > build I am unable to get the type definition for QWidget, and I waste
>> a
>> >> lot
>> >> > of time trying to find out what's gone wrong. If SIP itself could
>> give
>> >> > me
>> >> > some useful info wrt. to its state, I'm sure that could save me a
>> great
>> >> > deal
>> >> > of time.
>> >>
>> >> I don't know what you mean by its state.
>> >>
>> >> QWidget's type definition is a static data structure - sipType_QWidget.
>> >> You
>> >> don't get it, you just reference it.
>> >
>> >
>> > This is from an application embedding Python, so I'm calling SIP's C
>> API.
>> > In this case I have no choice but to go via the API right?
>>
>> Right.
>>
>> > What I do is
>> > call
>> > api_find_type("QWidget"), which in this case returns NULL.
>>
>> I would think the most likely thing in that case is that the QtGui module
>> hasn't been imported.
>
>
> It has been imported, and like I said this code works for certain builds.
> It is indicative of inconsistent builds that it doesn't work, and it would
> be great to have some debugging aids.
>
> Arve
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20090728/5d75140c/attachment.html


More information about the PyQt mailing list