Bug report #10596

error compiling against python2-pyqt4 4.11

Added by Donovan Cameron over 10 years ago. Updated over 9 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:Build/Install
Affected QGIS version:2.2.0 Regression?:No
Operating System:Arch Linux Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:Yes Copied to github as #:19001

Description

It looks like the pyqtconfig module might not be compiled by default anymore in pyqt4 4.11.

QGIS 2.2 can't compile against python2-pyqt4 4.11 and gives the following error because of a missing module (pyqtconfig).

Traceback (most recent call last):
File "/tmp/makepkg/qgis/src/qgis-2.2.0/cmake/FindPyQt.py", line 33, in <module>
import PyQt4.pyqtconfig
ImportError: No module named pyqtconfig
-- Found QScintilla2 PyQt4 module: 2.8.1
CMake Error at cmake/PyQt4Macros.cmake:48 (MESSAGE):
pyrcc4 not found - aborting
Call Stack (most recent call first):
CMakeLists.txt:570 (INCLUDE)

There's some info at http://pyqt.sourceforge.net/Docs/PyQt4/build_system.html#the-pyqt4-build-system that describes the recent changes in building pyqt4.

Associated revisions

Revision f4b3ad03
Added by Jürgen Fischer over 9 years ago

use PyQt4 where deprecated pyqtconfig is unavailable (fixes #10596 and fixes #11465)

Revision dd8c99b5
Added by Jürgen Fischer over 9 years ago

use PyQt4 where deprecated pyqtconfig is unavailable (fixes #10596 and fixes #11465)

History

#1 Updated by Donovan Cameron over 10 years ago

  • Status changed from Open to Closed

#2 Updated by Donovan Cameron over 10 years ago

  • Status changed from Closed to Reopened

I'm not sure if pyqtconfig is going to be available anymore (for newer versions of pyqt4 anyways, especially if packages maintainers start to configure pyqt4 with the new configure-ng.py script instead of the old configure.py.

From http://pyqt.sourceforge.net/Docs/PyQt4/build_system.html#the-pyqt4-build-system

Starting with v4.10, PyQt4.QtCore.PYQT_CONFIGURATION is a dict that describes how PyQt was configured. At the moment it contains a single value called sip_flags which is a string containing the appropriate -t and -x flags.

So instead of calling import PyQt4.pyqtconfig does that mean the QGIS configure needs to call PyQt4.QtCore.PYQT_CONFIGURATION from now on?

#3 Updated by Donovan Cameron over 10 years ago

@sip: Unable to find file "QtCore/QtCoremod.sip"
python/CMakeFiles/python_module_qgis_analysis.dir/build.make:283: recipe for target 'python/analysis/sipanalysispart0.cpp' failed

[root@localhost ~]# find /usr -name QtCoremod.sip
/usr/share/sip/QtCore/QtCoremod.sip

[root@localhost ~]# pacman -Qo /usr/share/sip/QtCore/QtCoremod.sip
/usr/share/sip/QtCore/QtCoremod.sip is owned by python2-pyqt4 4.11-2@

Looks like it's having trouble finding some files during the compile stage. Build is failing on Master (2.3) too.

EDIT: The sip issue has been resolved after sip was updated, but the pyqtconfig issue looks like it'll remain for linux distros because it's been planned for deprecation.

#4 Updated by Donovan Cameron over 10 years ago

Looks like the "QtCore/QtCoremod.sip" file issue is a duplicate of #8857
But the missing pyqtconfig python module is planned for deprecation now I think.

#5 Updated by Jürgen Fischer over 9 years ago

  • Status changed from Reopened to Closed

Also available in: Atom PDF