[PyQt] "sip: QFileIconProvider is undefined" from import of QtGui/QtGuimod.sip with SIP 4.10, Qt 4.6.1 and Python 2.5.1

Phil Thompson phil at riverbankcomputing.com
Mon Apr 5 21:24:54 BST 2010


On Mon, 5 Apr 2010 15:27:47 -0400 (EDT), mfloyd at evryx.com wrote:
> Excerpt from our pyqtconfig.py script is below.  The Qt string generated
> for pyqt_sip_flags from a Qt 4.6.1/PyQt 4.6.1 installation is 'Qt_4_5_0'
-
> which is puzzling to all of us who were expecting to see something like
> 'Qt_4_6_x'.  Is the appearance of '-t Qt_4_5_0' for 'pyqt_sip_flags' in
the
> Qt 4.6.1/PyQt 4.6.1 installation expected behavior?
> 
> Thanks,
> 
> - Mark

Not if you are using Qt v4.6.1. You must have an older version of the Qt
libraries installed as well.

Phil

> # These are installation specific values created when PyQt4 was
configured.
> _pkg_config = {
>     'pyqt_bin_dir':      '/rel/lang/python/2.5.1-6/opt-gccWS5_64/bin',
>     'pyqt_config_args':  '--confirm-license --concatenate --consolidate
>    
--qmake=/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64/bin/qmake
>    
--plugin-destdir=/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64/plugins
>     --verbose CC=/usr/bin/gcc4 CXX=/usr/bin/g++4 LINK=/usr/bin/g++4
>     LINK_SHLIB=/usr/bin/g++4 CXXFLAGS=-mcmodel=small -fPIC
>     LFLAGS+=-Wl,--rpath,/opt/lib/gccWS5_64 -Wl,--rpath,/usr/lib64 -fPIC',
>     'pyqt_mod_dir':     
>    
'/rel/lang/python/2.5.1-6/opt-gccWS5_64/lib/python2.5/site-packages/PyQt4',
>     'pyqt_modules':      'QtCore QtGui QtHelp QtNetwork QtOpenGL QtScript
>     QtScriptTools QtSql QtSvg QtTest QtWebKit QtXml QtXmlPatterns
>     QtAssistant QtDesigner',
>     'pyqt_sip_dir':      '/rel/lang/python/2.5.1-6/share/sip/PyQt4',
>     'pyqt_sip_flags':    '-x VendorID -t WS_X11 -x PyQt_NoPrintRangeBug
-t
>     Qt_4_5_0 -x Py_v3 -g',
>     'pyqt_version':      0x040601,
>     'pyqt_version_str':  '4.6.1',
>     'qt_data_dir':      
>     '/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64',
>     'qt_dir':           
>     '/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64',
>     'qt_edition':        'Desktop',
>     'qt_framework':      0,
>     'qt_inc_dir':       
>    
'/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64/include',
>     'qt_lib_dir':       
>    
'/rel/depot/third_party_build/qt/4.6.1-0/opt-ws4-x86_64-gccWS5_64/lib',
>     'qt_threaded':       1,
>     'qt_version':        0x040601,
>     'qt_winconfig':      'shared'
> 
> 
> 
> 
> -----Original Message-----
> From: "Phil Thompson" <phil at riverbankcomputing.com>
> Sent: Wednesday, March 31, 2010 4:38pm
> To: "Mark Floyd" <mfloyd at evryx.com>
> Cc: pyqt at riverbankcomputing.com
> Subject: Re: [PyQt] "sip: QFileIconProvider is undefined" from import of
> QtGui/QtGuimod.sip with SIP 4.10, Qt 4.6.1 and Python 2.5.1
> 
> On Tue, 30 Mar 2010 20:34:14 -0700, Mark Floyd <mfloyd at evryx.com> wrote:
>> I'm trying to run a simple .sip file example and can't seem to get the
>> bloody thing to run.  Here is my small example *without* the import of
>> QtGui/QtGuimod.sip... which will build normally:
>> 
>> ####  Working Example working.sip ###
>> %Module word 0
>> #### End working.sip
>> 
>> % sip -I/rel/lang/python/2.5.1-6/share/sip/PyQt4 -t WS_X11 -t Qt_4_6_0
-c
> .
>> working.sip
>> 
>> 
>> If I try to import QtGui/QtGuimod.sip as demonstrated below:
>> 
>> ### Broken Example broken.sip ###
>> %Import QtGui/QtGuimod.sip
>> %Module word 0
>> ### End broken.sip
>> 
>> I get the following error:
>> % sip -I/rel/lang/python/2.5.1-6/share/sip/PyQt4 -t WS_X11 -t Qt_4_6_0
-c
> .
>> broken.sip
>> sip: QFileIconProvider is undefined
>> 
>> I found another thread on the email list where a user said "-t Qt_4_6_0"
>> would fix this problem... but I'm not getting same luck here.
>> 
>> /rel/lang/python/2.5.1-6/share/sip/PyQt4/QtGui/QtGuimod.sip does include
>> qfileiconprovider.sip.
>> 
>> The error doesn't give much information for a newcomer to analyze... and
> an
>> strace isn't revealing much either.  Any pointers on how to fix this
> would
>> be much appreciated.
>> 
>> This was built on a RedHat 4 box using SIP 4.10, Qt 4.6.1, and Python
>> 2.5.1.
> 
> Works fine for me. It suggests a problem with your PyQt installation. You
> can check 'pyqt_sip_flags' in pyqtconfig.py to see what flags you should
be
> using.
> 
> Phil


More information about the PyQt mailing list