Qt 6.7.0: PyQt6 build failure

Ben Greiner code-pyqt at bnavigator.de
Tue Apr 9 11:12:14 BST 2024


Hi,

Qt 6.7.0 is out and broke its API again. PyQt 6.6.1 fails to build:

[  425s] g++ -c -pipe -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 
-fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables 
-fstack-clash-protection -Werror=return-type -flto=auto -g -O2 -Wall 
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong 
-funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection 
-Werror=return-type -flto=auto -g -DQT_NO_INT128 -fno-exceptions -Wall 
-Wextra -D_REENTRANT -fPIC -DPy_LIMITED_API=0x03080000 
-DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_KEYPAD_NAVIGATION 
-DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -I. -I. -I.. 
-I../../qpy/QtCore -I/usr/include/python3.11 -I/usr/include/qt6 
-I/usr/include/qt6/QtCore -I. -I/usr/lib64/qt6/mkspecs/linux-g++ -o 
sipQtCoreQTextBoundaryFinder.o sipQtCoreQTextBoundaryFinder.cpp
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/sip/QtCore/qabstractitemmodel.sip:324:13: 
warning: ‘void qpycore_gc_modelroledata(PyObject*)’ declared ‘static’ 
but never defined [-Wunused-function]
[  426s]   324 | static void qpycore_gc_modelroledata(PyObject *mrd_obj);
[  426s]       |             ^~~~~~~~~~~~~~~~~~~~~~~~
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: 
In function ‘PyObject* meth_QTimeZone_country(PyObject*, PyObject*)’:
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:152:37: 
warning: ‘QLocale::Country QTimeZone::country() const’ is deprecated: 
Use territory() instead [-Wdeprecated-declarations]
[  426s]   152 |             sipRes = sipCpp->country();
[  426s]       |                      ~~~~~~~~~~~~~~~^~
[  426s] In file included from 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/sip/QtCore/qtimezone.sip:26:
[  426s] /usr/include/qt6/QtCore/qtimezone.h:173:22: note: declared here
[  426s]   173 |     QLocale::Country country() const;
[  426s]       |                      ^~~~~~~
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: 
In function ‘PyObject* slot_QTimeZone___ne__(PyObject*, PyObject*)’:
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:1025:51: 
error: ‘class QTimeZone’ has no member named ‘operator!=’; did you mean 
‘operator=’?
[  426s]  1025 |             sipRes = sipCpp->::QTimeZone::operator!=(*a0);
[  426s]       | ^~
[  426s]       | operator=
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp: 
In function ‘PyObject* slot_QTimeZone___eq__(PyObject*, PyObject*)’:
[  426s] 
/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore/sipQtCoreQTimeZone.cpp:1054:51: 
error: ‘class QTimeZone’ has no member named ‘operator==’; did you mean 
‘operator=’?
[  426s]  1054 |             sipRes = sipCpp->::QTimeZone::operator==(*a0);
[  426s]       | ^~
[  426s]       | operator=
[  426s] g++ -c -pipe -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 
-fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables 
-fstack-clash-protection -Werror=return-type -flto=auto -g -O2 -Wall 
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong 
-funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection 
-Werror=return-type -flto=auto -g -DQT_NO_INT128 -fno-exceptions -Wall 
-Wextra -D_REENTRANT -fPIC -DPy_LIMITED_API=0x03080000 
-DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_KEYPAD_NAVIGATION 
-DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -I. -I. -I.. 
-I../../qpy/QtCore -I/usr/include/python3.11 -I/usr/include/qt6 
-I/usr/include/qt6/QtCore -I. -I/usr/lib64/qt6/mkspecs/linux-g++ -o 
sipQtCoreQTemporaryFile.o sipQtCoreQTemporaryFile.cpp
[  426s] g++ -c -pipe -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 
-fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables 
-fstack-clash-protection -Werror=return-type -flto=auto -g -O2 -Wall 
-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong 
-funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection 
-Werror=return-type -flto=auto -g -DQT_NO_INT128 -fno-exceptions -Wall 
-Wextra -D_REENTRANT -fPIC -DPy_LIMITED_API=0x03080000 
-DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_KEYPAD_NAVIGATION 
-DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -I. -I. -I.. 
-I../../qpy/QtCore -I/usr/include/python3.11 -I/usr/include/qt6 
-I/usr/include/qt6/QtCore -I. -I/usr/lib64/qt6/mkspecs/linux-g++ -o 
sipQtCoreQTemporaryDir.o sipQtCoreQTemporaryDir.cpp
[  426s] make[1]: *** [Makefile:2169: sipQtCoreQTimeZone.o] Error 1
[  426s] make[1]: *** Waiting for unfinished jobs....
[  428s] make[1]: Leaving directory 
'/home/abuild/rpmbuild/BUILD/PyQt6-6.6.1/build/QtCore'


Full build log and package versions: 
https://paste.opensuse.org/pastes/1a3a3c609485
SUSE Bug: https://bugzilla.suse.com/show_bug.cgi?id=1222514


An update of PyQt6 would be most appreciated by openSUSE users.

Cheers,
Ben
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20240409/8ae7ca1f/attachment.sig>


More information about the PyQt mailing list