[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