#2985 closed patch (fixed)
qgis broken with new py-sip
Reported by: | jasperla | Owned by: | nobody |
---|---|---|---|
Priority: | minor: annoyance | Milestone: | Version 1.6.0 |
Component: | Build/Install | Version: | 1.5.0 |
Keywords: | sip build failure | Cc: | rdieter, aatiis |
Must Fix for Release: | Yes | Platform: | Gentoo |
Platform Version: | Awaiting user input: | no |
Description
After updating py-sip to the latest 4.11 release, qgis 1.5.0 doesn't build anymore. It bails out with the following error:
cd /usr/obj/ports/qgis-1.5.0/qgis-1.5.0/python && /usr/local/bin/sip -x VendorID -t WS_X11 -x PyQt_NoPrintRangeBug -t Qt_4_6_3 -x Py_v3 -g -j 4 -c /usr/obj/ports/qgis-1.5.0/qgis-1.5.0/python/core -I /usr/local/share/sip -I /usr/obj/ports/qgis-1.5.0/qgis-1.5.0/python /usr/obj/ports/qgis-1.5.0/qgis-1.5.0/python/core/core.sip sip: /usr/obj/ports/qgis-1.5.0/qgis-1.5.0/python/core/conversions.sip:269: Mapped type has already been defined in another module *** Error code 1
I can attach the full build log if needed.
Change History (10)
comment:1 by , 14 years ago
comment:2 by , 14 years ago
Doesn't work for me with QGIS 1.5, SIP 4.11 and Qt 4.7:
[ 95%] Generating ui_qgsplugininstallerbase.py cd /builddir/build/BUILD/qgis-1.5.0/python/plugins/plugin_installer && /usr/bin/pyuic4 /builddir/build/BUILD/qgi s-1.5.0/python/plugins/plugin_installer/qgsplugininstallerbase.ui -o /builddir/build/BUILD/qgis-1.5.0/python/plu gins/plugin_installer/ui_qgsplugininstallerbase.py An unexpected error occurred. Check that you are using the latest version of PyQt and send an error report to support@…, including the following information:
- your version of PyQt (4.7.6)
- the UI file that caused this error
- the debug output of pyuic4 (use the -d flag when calling pyuic4)
make[2]: Leaving directory `/builddir/build/BUILD/qgis-1.5.0' make[1]: Leaving directory `/builddir/build/BUILD/qgis-1.5.0' make[2]: * [python/plugins/plugin_installer/ui_qgsplugininstallerbase.py] Error 1 make[1]: * [python/plugins/plugin_installer/CMakeFiles/pluginstaller.dir/all] Error 2 make: * [all] Error 2
comment:3 by , 14 years ago
Ah sorry I forgot to mention that one; it is a regression with pyuic 4.7.6 on python 2.x - please use a development snapshot of py-qt4 instead or remove "encoding='utf8'" from pyuic/uic/driver.py around line 60.
comment:4 by , 14 years ago
Cc: | added |
---|
comment:5 by , 14 years ago
Using PyQt-4.7.7, released today, along with sip-4.11, I still get the originally posted error. The above patch worked for me. Should this be applied to trunk?
comment:6 by , 14 years ago
Type: | bug → patch |
---|
comment:7 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Actually it's not a SIP problem, but a PyQt4 problem. PyQt4 contains QSet<int>
starting with 4.7.5. r14325 enables QGIS' version of QSet<int>
only for earlier versions.
comment:8 by , 13 years ago
Cc: | added |
---|---|
Platform: | OpenBSD → Gentoo |
Priority: | major: does not work as expected → minor: annoyance |
Resolution: | fixed |
Status: | closed → reopened |
I'm reopening this because changeset 14325 introduced a Developer Warning that has still not been fixed. Please change "trunk/qgis/python/CMakeLists.txt" line 44 to match the opening IF statement arguments (on line 42).
comment:9 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
was already fixed in r14330 (see https://trac.osgeo.org/qgis/browser/trunk/qgis/python/CMakeLists.txt#L42).
The following diff fixes things with sip>=4.11; I showed it to Phil Banks who thinks it's ok as a workaround and suggests it is made conditional depending on the version of SIP that is found.