[QGIS-Developer] QGIS PyQt version conflict

Michal Zimmermann zimmicz at gmail.com
Thu May 11 03:44:45 PDT 2017


Hi,
I'm starting with qgis plugin development on ubuntu-based Mint OS (v 18.1
Serena). I created a very simple form in Qt Designer 4.8.7 and tried to
convert it to python file with

pyuic4 -d form.ui -o form.py

This results in

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/port_v2/invoke.py", line
34, in invoke
    exit_status = driver.invoke()
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/driver.py", line 59, in
invoke
    self._generate()
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/driver.py", line 98, in
_generate
    self._opts.resource_suffix)
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/__init__.py", line 173,
in compileUi
    winfo = compiler.UICompiler().compileUi(uifile, pyfile, from_imports,
resource_suffix)
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/Compiler/compiler.py",
line 55, in __init__
    CompilerCreatorPolicy())
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/uiparser.py", line 170,
in __init__
    self.factory = QObjectCreator(creatorPolicy)
  File "/usr/lib/python2.7/dist-packages/PyQt4/uic/objcreator.py", line 94,
in __init__
    modinfo = plugin_locals["moduleInformation"]()
  File "<string>", line 52, in moduleInformation
  File "/usr/lib/python2.7/dist-packages/qgis/__init__.py", line 26, in
<module>
    from qgis.PyQt import QtCore
  File "/usr/lib/python2.7/dist-packages/qgis/PyQt/QtCore.py", line 28, in
<module>
    sip.setapi(api, 2)
ValueError: API 'QDate' has already been set to version 1

If I change /usr/lib/python2.7/dist-packages/qgis/PyQt/QtCore.py line 28 to
sip.setapi(api, 1), it works, QGIS starts with a following message though:

Couldn't load PyQGIS.
Python support will be disabled.


Traceback (most recent call last):
  File "", line 1, in
  File "/usr/lib/python2.7/dist-packages/qgis/__init__.py", line 26, in
    from qgis.PyQt import QtCore
  File "/usr/lib/python2.7/dist-packages/qgis/PyQt/QtCore.py", line 28, in
    sip.setapi(api, 1)
ValueError: API 'QDate' has already been set to version 2

Python version:
2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609]

QGIS version:
2.18.7 'Las Palmas', 3b30e6a

What exactly do I have to do to make the both sides work?

-- 
Michal Zimmermann (zimmi)
WWW: https://www.zimmi.cz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20170511/4e0f19dc/attachment.html>


More information about the QGIS-Developer mailing list