[PyQt] Error building PyQt4.5.1 (qpycore_chimera.cpp:392: error: too few arguments to function)

Nate Reid nreid at imagemoversdigital.com
Thu Jun 18 02:05:34 BST 2009

Is there any way to diagnose where the offending SIP installation is coming from?
I checked my sipconfig.py, path to sip, and path to sip.h (as in the build output below) and everything look correct.  Could it be because I built sip using -u for debug?

-----Original Message-----
From: Phil Thompson [mailto:phil at riverbankcomputing.com] 
Sent: Wednesday, June 17, 2009 2:36 PM
To: Nate Reid
Cc: pyqt at riverbankcomputing.com
Subject: Re: [PyQt] Error building PyQt4.5.1 (qpycore_chimera.cpp:392: error: too few arguments to function)

On Wed, 17 Jun 2009 14:30:48 -0700, Nate Reid <nreid at imagemoversdigital.com>
> I am trying to build PyQt4.5.1 against Qt 4.5.1 using Sip 4.8.1 and
> 2.5.1 on Linux amd64, but I'm getting this error immediately:
> Platform: Redhat EL5 Linux, amd64
> I'm using Python-2.5.1 built using 4 character unicode (UC4) Qt 4.5.1 
> sip 4.8.1 configured with the above python
> g++ 4.1.1
> make[1]: Entering directory `/var/tmp/PyQt-x11-gpl-4.5.1/qpy'
> make[2]: Entering directory `/var/tmp/PyQt-x11-gpl-4.5.1/qpy/QtCore'
> g++ -c -m64 -pipe -fno-strict-aliasing -O2 -fPIC -Wall -W -D_REENTRANT
> -I/imd/tool/app/Qt/Qt-4.5.1/linux64/mkspecs/linux-g++-64 -I.
> -I/imd/tool/app/Qt/Qt-4.5.1/linux64/include/QtCore
> -I/imd/tool/app/Qt/Qt-4.5.1/linux64/include/QtGui
> -I/imd/tool/app/Qt/Qt-4.5.1/linux64/include
> -I/imd/tool/app/python/python_UC4-2.5.1/linux64/include/python2.5
> -I../../QtCore -I. -I. -o qpycore_chimera.o qpycore_chimera.cpp
> qpycore_chimera.cpp: In member function $(B!F(Bbool 
> Chimera::parse_cpp_type(const QByteArray&)$(B!G(B:
> qpycore_chimera.cpp:392: error: too few arguments to function
> When I looked at that line, it's calling:
> base_type = sipResolveTypedef(raw_type.constData());
> Which is defined in sipAPIQtCore.h' (line 7207)
> #define sipResolveTypedef           sipAPI_QtCore->api_resolve_typedef
> In sip.h, the api_resolve_typedef is defined as (line 1176)
>     const char *(*api_resolve_typedef)(const char *name);
> I created preprocessor output using the (-E) flag, and the function
> becomes:
>     const char *(*api_resolve_typedef)(const char *name,
>             const sipExportedModuleDef *em);
> I'm not sure where the 'sipExportedModuleDef' part got added in there.

Looks like you have bits of an older SIP installed somewhere.


More information about the PyQt mailing list