Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.18 build fails with latest sip/pyqt4 #24253

Closed
qgib opened this issue Mar 12, 2017 · 9 comments
Closed

2.18 build fails with latest sip/pyqt4 #24253

qgib opened this issue Mar 12, 2017 · 9 comments
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Build/Install Related to compiling or installing QGIS

Comments

@qgib
Copy link
Contributor

qgib commented Mar 12, 2017

Author Name: Doug Newgard (Doug Newgard)
Original Redmine Issue: 16343
Affected QGIS version: 2.18.4
Redmine category:build/install


Even after 85a0db2, build still fails with sip 4.19.1 and pyqt4 4.12

[ 91%] Generating ui_dialogAbout.py
Traceback (most recent call last):
  File "../../../../../scripts/pyuic-wrapper.py", line 26, in <module>
    import qgis.PyQt.uic.pyuic
  File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/__init__.py", line 27, in <m
odule>
    from qgis.core import QgsFeature, QgsGeometry
  File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/core/__init__.py", line 30,
in <module>
    from qgis._core import *
RuntimeError: qgis._core cannot import type 'QList<QVariant>' from PyQt4.QtCore
make[2]: *** [python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:118: p
ython/plugins/GdalTools/tools/ui_dialogAbout.py] Error 1
make[1]: *** [CMakeFiles/Makefile2:4667: python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-d
epend.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....++

Build of 2.14 succeeds, but has the same error at runtime, causing python support to be disabled.

@qgib
Copy link
Contributor Author

qgib commented Mar 20, 2017

Author Name: Shai Efrati (Shai Efrati)


More details and a workaround were published here: https://aur.archlinux.org/packages/qgis/ but Python support is still an issue.

@qgib
Copy link
Contributor Author

qgib commented Mar 24, 2017

Author Name: Doug Newgard (Doug Newgard)


Fedora has a patch that works: https://src.fedoraproject.org/cgit/rpms/qgis.git/plain/qgis_sip-ftbfs.patch

Second part has already been applied.

@qgib
Copy link
Contributor Author

qgib commented Apr 30, 2017

Author Name: Giovanni Manghi (@gioman)


  • regression was configured as 0
  • easy_fix was configured as 0

@qgib
Copy link
Contributor Author

qgib commented May 1, 2017

Author Name: Alexei Ardyakov (Alexei Ardyakov)


The patch doesn't work for me:

[ 99%] Generating ui_dialogBase.py
make[2]: *** [python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:118: python/plugins/GdalTools/tools/ui_dialogAbout.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/plugins/GdalTools/tools/ui_dialogAbout.py'
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [python/plugins/db_manager/CMakeFiles/zzz-db_manager-18-depend.dir/build.make:73: python/plugins/db_manager/ui_DlgAddGeometryColumn.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/plugins/db_manager/ui_DlgAddGeometryColumn.py'
make[2]: *** [python/plugins/db_manager/db_plugins/postgis/plugins/versioning/CMakeFiles/zzz-db_manager-8-depend.dir/build.make:63: python/plugins/db_manager/db_plugins/postgis/plugins/versioning/ui_DlgVersioning.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/plugins/db_manager/db_plugins/postgis/plugins/versioning/ui_DlgVersioning.py'
make[2]: *** [python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:122: python/plugins/GdalTools/tools/ui_dialogBase.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/plugins/GdalTools/tools/ui_dialogBase.py'
make[1]: *** [CMakeFiles/Makefile2:5402: python/plugins/db_manager/db_plugins/postgis/plugins/versioning/CMakeFiles/zzz-db_manager-8-depend.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:4905: python/plugins/db_manager/CMakeFiles/zzz-db_manager-18-depend.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:4766: python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/all] Error 2
[ 99%] Generating ui_console_history_dlg.py
[ 99%] Generating ui_console_compile_apis.py
[ 99%] Generating ui_console_settings.py
make[2]: *** [python/console/CMakeFiles/pyconsole.dir/build.make:63: python/console/ui_console_compile_apis.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/console/ui_console_compile_apis.py'
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [python/console/CMakeFiles/pyconsole.dir/build.make:71: python/console/ui_console_settings.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/console/ui_console_settings.py'
make[2]: *** [python/console/CMakeFiles/pyconsole.dir/build.make:67: python/console/ui_console_history_dlg.py] Segmentation fault (core dumped)
make[2]: *** Deleting file 'python/console/ui_console_history_dlg.py'
make[1]: *** [CMakeFiles/Makefile2:8484: python/console/CMakeFiles/pyconsole.dir/all] Error 2
make: *** [Makefile:150: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

{{collapse(coredumpctl info 20473)

           PID: 20473 (python2)
           UID: 1000 (***)
           GID: 100 (users)
        Signal: 11 (SEGV)
     Timestamp: ***
  Command Line: /usr/bin/python2 ../../../../../scripts/pyuic-wrapper.py /home/username/builds/qgis/src/qgis-2.18.7/python/plugins/GdalTools/tools/dialogAbout.ui -o /home/username/builds/qgis/src/qgis-2.18.7/build/python/plugins/GdalTools/tools/ui_dialogAbout.py
    Executable: /usr/bin/python2.7
 Control Group: /user.slice/user-1000.slice/session-c2.scope
          Unit: session-c2.scope
         Slice: user-1000.slice
       Session: c2
     Owner UID: 1000 (***)
       Boot ID: 49b6e9df028b43dab8c003826674190d
    Machine ID: 0d1396b2265a492ab8980d8772cb64ea
      Hostname: ***
       Storage: /var/lib/systemd/coredump/core.python2.1000.49b6e9df028b43dab8c0038
       Message: Process 20473 (python2) of user 1000 dumped core.
                
                Stack trace of thread 20473:
                #0  0x00007fa2e7900d36 strlen (libc.so.6)
                #1  0x00007fa2e7ed81b9 PyString_FromFormatV (libpython2.7.so.1.0)
                #2  0x00007fa2e7f38a08 PyErr_Format (libpython2.7.so.1.0)
                #3  0x00007fa2e6d4aef7 n/a (sip.so)
                #4  0x00007fa2cf8cc926 initkdeui (kdeui.so)
                #5  0x00007fa2e7f4303c _PyImport_LoadDynamicModule (libpython2.7.so
                #6  0x00007fa2e7f40f81 import_submodule (libpython2.7.so.1.0)
                #7  0x00007fa2e7f41209 load_next (libpython2.7.so.1.0)
                #8  0x00007fa2e7f41ca8 PyImport_ImportModuleLevel (libpython2.7.so.
                #9  0x00007fa2e7f23907 builtin___import__ (libpython2.7.so.1.0)
                #10094 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #11 0x00007fa2e7f25716 PyEval_CallObjectWithKeywords (libpython2.7.
                #12 0x00007fa2e7f28552 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #13 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #14 0x00007fa2e7f2bd02 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #15 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #16 0x00007fa2e7eb41bb function_call (libpython2.7.so.1.0)
                #17 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #18 0x00007fa2e7e9d05a instancemethod_call (libpython2.7.so.1.0)
                #19 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #20 0x00007fa2e7eea806 slot_tp_init (libpython2.7.so.1.0)
                #21 0x00007fa2e7ee705d type_call (libpython2.7.so.1.0)
                #22 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #23 0x00007fa2e7f2b503 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #24 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #25 0x00007fa2e7eb41bb function_call (libpython2.7.so.1.0)
                #26 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #27 0x00007fa2e7e9d05a instancemethod_call (libpython2.7.so.1.0)
                #28 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #29 0x00007fa2e7f2b503 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #30 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #31 0x00007fa2e7eb41bb function_call (libpython2.7.so.1.0)
                #32 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #33 0x00007fa2e7e9d05a instancemethod_call (libpython2.7.so.1.0)
                #34 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #35 0x00007fa2e7eea806 slot_tp_init (libpython2.7.so.1.0)
                #10095 0x00007fa2e7ee705d type_call (libpython2.7.so.1.0)
                #10096 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #10097 0x00007fa2e7f2b503 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10098 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #10099 0x00007fa2e7f2bd02 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10100 0x00007fa2e7f2be38 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10101 0x00007fa2e7f2be38 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10102 0x00007fa2e7f2be38 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10103 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #10104 0x00007fa2e7f2f9e8 PyEval_EvalCode (libpython2.7.so.1.0)
                #10105 0x00007fa2e7f3ffc7 PyImport_ExecCodeModuleEx (libpython2.7.so.1
                #10106 0x00007fa2e7f4025e load_source_module (libpython2.7.so.1.0)
                #10107 0x00007fa2e7f40f81 import_submodule (libpython2.7.so.1.0)
                #10108 0x00007fa2e7f414ec ensure_fromlist (libpython2.7.so.1.0)
                #10109 0x00007fa2e7f41d8e PyImport_ImportModuleLevel (libpython2.7.so.
                #10110 0x00007fa2e7f23907 builtin___import__ (libpython2.7.so.1.0)
                #10111 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)
                #10112 0x00007fa2e7f25716 PyEval_CallObjectWithKeywords (libpython2.7.
                #10113 0x00007fa2e7f28552 PyEval_EvalFrameEx (libpython2.7.so.1.0)
                #10114 0x00007fa2e7f2f8dc PyEval_EvalCodeEx (libpython2.7.so.1.0)
                #10115 0x00007fa2e7f2f9e8 PyEval_EvalCode (libpython2.7.so.1.0)
                #10116 0x00007fa2e7f3ffc7 PyImport_ExecCodeModuleEx (libpython2.7.so.1
                #10117 0x00007fa2e7f4025e load_source_module (libpython2.7.so.1.0)
                #10118 0x00007fa2e7f40f81 import_submodule (libpython2.7.so.1.0)
                #10119 0x00007fa2e7f41209 load_next (libpython2.7.so.1.0)
                #10120 0x00007fa2e7f41ca8 PyImport_ImportModuleLevel (libpython2.7.so.
                #10121 0x00007fa2e7f23907 builtin___import__ (libpython2.7.so.1.0)
                #10122 0x00007fa2e7e8d682 PyObject_Call (libpython2.7.so.1.0)

}}
I tried to build 2.18.6 and 2.18.7, tried different thread count in MAKEFLAGS, with the same result.

@qgib
Copy link
Contributor Author

qgib commented May 16, 2017

Author Name: Alexei Ardyakov (Alexei Ardyakov)


It turned out in my case segfault was caused by obsolete Arch Linux package kdebindings-python2. After removing it, QGIS compiles and runs well, so my report is probably unrelated to the main issue.

@qgib
Copy link
Contributor Author

qgib commented Jul 12, 2017

Author Name: Doug Newgard (Doug Newgard)


It appears that sip (or related packages) 4.19.3 fixed this


  • status_id was changed from Open to Closed

@qgib
Copy link
Contributor Author

qgib commented Jul 12, 2017

Author Name: Jürgen Fischer (@jef-n)


  • description was changed from Even after 85a0db2, build still fails with sip 4.19.1 and pyqt4 4.12

[ 91%] Generating ui_dialogAbout.py
Traceback (most recent call last):
File "../../../../../scripts/pyuic-wrapper.py", line 26, in
import qgis.PyQt.uic.pyuic
File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/init.py", line 27, in
from qgis.core import QgsFeature, QgsGeometry
File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/core/init.py", line 30,
in
from qgis._core import *
RuntimeError: qgis._core cannot import type 'QList' from PyQt4.QtCore
make[2]: *** [python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:118: p
ython/plugins/GdalTools/tools/ui_dialogAbout.py] Error 1
make[1]: *** [CMakeFiles/Makefile2:4667: python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-d
epend.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....++

Build of 2.14 succeeds, but has the same error at runtime, causing python support to be disabled. to Even after commit:85a0db24f32351f6096cd8282f03ad5c2f4e6ef5, build still fails with sip 4.19.1 and pyqt4 4.12

[ 91%] Generating ui_dialogAbout.py
Traceback (most recent call last):
  File "../../../../../scripts/pyuic-wrapper.py", line 26, in 
    import qgis.PyQt.uic.pyuic
  File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/__init__.py", line 27, in 
    from qgis.core import QgsFeature, QgsGeometry
  File "/home/dnewgard/PKGBUILDs/qgis/src/QGIS/build/output/python/qgis/core/__init__.py", line 30,
in 
    from qgis._core import *
RuntimeError: qgis._core cannot import type 'QList' from PyQt4.QtCore
make[2]: *** [python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-depend.dir/build.make:118: p
ython/plugins/GdalTools/tools/ui_dialogAbout.py] Error 1
make[1]: *** [CMakeFiles/Makefile2:4667: python/plugins/GdalTools/tools/CMakeFiles/zzz-GdalTools-2-d
epend.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....++

Build of 2.14 succeeds, but has the same error at runtime, causing python support to be disabled.

@qgib
Copy link
Contributor Author

qgib commented Jul 14, 2017

Author Name: marisn - (marisn -)


Sorry, it is not fixed by sip/PyQt upgrade. There is still necessity to also remove one line from qgscoordinatetransform.sip file (as suggested by Arch users).
python/core/qgscoordinatetransform.sip delete/uncomment 18th line: "extern PyObject *sipExportedExceptions__core[2];"
Only then 2.18.10 (bd1f9bf) compiles with:
dev-python/sip-4.19.3
dev-python/PyQt4-4.12.1


  • status_id was changed from Closed to Reopened
  • operating_system was changed from Arch Linux to

@qgib
Copy link
Contributor Author

qgib commented Jul 14, 2017

Author Name: Doug Newgard (Doug Newgard)


Which is a completely different issue


  • status_id was changed from Reopened to Closed

@qgib qgib closed this as completed Jul 14, 2017
@qgib qgib added Bug Either a bug report, or a bug fix. Let's hope for the latter! Build/Install Related to compiling or installing QGIS labels May 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Build/Install Related to compiling or installing QGIS
Projects
None yet
Development

No branches or pull requests

1 participant