Description of problem: In a Rawhide build target (I have not tried F35, the shiboken2 is apparently the same, but the toolchain is not), shiboken2 fails to find the GCC or Clang header stddef.h. Version-Release number of selected component (if applicable): shiboken2-1:5.15.2-5.fc35 How reproducible: Always Steps to Reproduce: 1. Try to build Falkon with Python support. Actual results: (pyfalkon) Errors in -DQT_ANNOTATE_CLASS(type,...)=static_assert(sizeof(#__VA_ARGS__),#type);: /usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/cstddef:50:10: fatal: 'stddef.h' file not found /tmp/pyfalkon_global_dfdkIE.hpp:1:10: note: in file included from /tmp/pyfalkon_global_dfdkIE.hpp:1: /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23:10: note: in file included from /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23: /usr/include/qt5/QtNetwork/QHstsPolicy:1:10: note: in file included from /usr/include/qt5/QtNetwork/QHstsPolicy:1: /usr/include/qt5/QtNetwork/qhstspolicy.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qhstspolicy.h:43: /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43: /usr/include/qt5/QtCore/qglobal.h:46:12: note: in file included from /usr/include/qt5/QtCore/qglobal.h:46: (pyfalkon) Clang: 1 diagnostic messages: /usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/cstddef:50:10: fatal: 'stddef.h' file not found /tmp/pyfalkon_global_dfdkIE.hpp:1:10: note: in file included from /tmp/pyfalkon_global_dfdkIE.hpp:1: /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23:10: note: in file included from /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23: /usr/include/qt5/QtNetwork/QHstsPolicy:1:10: note: in file included from /usr/include/qt5/QtNetwork/QHstsPolicy:1: /usr/include/qt5/QtNetwork/qhstspolicy.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qhstspolicy.h:43: /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43: /usr/include/qt5/QtCore/qglobal.h:46:12: note: in file included from /usr/include/qt5/QtCore/qglobal.h:46: Keeping temporary file: /tmp/pyfalkon_global_dfdkIE.hpp shiboken: Error running ApiExtractor. Command line: --generator-set=shiboken --enable-parent-ctor-heuristic --enable-pyside-extensions --enable-return-value-heuristic --use-isnull-as-nb_nonzero --avoid-protected-hack -I/usr/include/qt5/ -I/usr/include/qt5/QtCore -I/usr/lib64/qt5//mkspecs/linux-g++ -I/usr/include/qt5/ -I/usr/include/qt5/QtGui -I/usr/include/qt5/ -I/usr/include/qt5/QtSql -I/usr/include/qt5/ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/ -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngineCore -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngineWidgets -I/builddir/build/BUILD/falkon-3.2.0/src/lib/3rdparty -I/builddir/build/BUILD/falkon-3.2.0/src/lib/adblock -I/builddir/build/BUILD/falkon-3.2.0/src/lib/app -I/builddir/build/BUILD/falkon-3.2.0/src/lib/autofill -I/builddir/build/BUILD/falkon-3.2.0/src/lib/bookmarks -I/builddir/build/BUILD/falkon-3.2.0/src/lib/cookies -I/builddir/build/BUILD/falkon-3.2.0/src/lib/downloads -I/builddir/build/BUILD/falkon-3.2.0/src/lib/history -I/builddir/build/BUILD/falkon-3.2.0/src/lib/navigation -I/builddir/build/BUILD/falkon-3.2.0/src/lib/network -I/builddir/build/BUILD/falkon-3.2.0/src/lib/notifications -I/builddir/build/BUILD/falkon-3.2.0/src/lib/opensearch -I/builddir/build/BUILD/falkon-3.2.0/src/lib/other -I/builddir/build/BUILD/falkon-3.2.0/src/lib/plugins -I/builddir/build/BUILD/falkon-3.2.0/src/lib/popupwindow -I/builddir/build/BUILD/falkon-3.2.0/src/lib/preferences -I/builddir/build/BUILD/falkon-3.2.0/src/lib/session -I/builddir/build/BUILD/falkon-3.2.0/src/lib/sidebar -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tabwidget -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tools -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webengine -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webtab -I/builddir/build/BUILD/falkon-3.2.0/src/lib/3rdparty -I/builddir/build/BUILD/falkon-3.2.0/src/lib/adblock -I/builddir/build/BUILD/falkon-3.2.0/src/lib/app -I/builddir/build/BUILD/falkon-3.2.0/src/lib/autofill -I/builddir/build/BUILD/falkon-3.2.0/src/lib/bookmarks -I/builddir/build/BUILD/falkon-3.2.0/src/lib/cookies -I/builddir/build/BUILD/falkon-3.2.0/src/lib/downloads -I/builddir/build/BUILD/falkon-3.2.0/src/lib/history -I/builddir/build/BUILD/falkon-3.2.0/src/lib/navigation -I/builddir/build/BUILD/falkon-3.2.0/src/lib/network -I/builddir/build/BUILD/falkon-3.2.0/src/lib/notifications -I/builddir/build/BUILD/falkon-3.2.0/src/lib/opensearch -I/builddir/build/BUILD/falkon-3.2.0/src/lib/other -I/builddir/build/BUILD/falkon-3.2.0/src/lib/plugins -I/builddir/build/BUILD/falkon-3.2.0/src/lib/popupwindow -I/builddir/build/BUILD/falkon-3.2.0/src/lib/preferences -I/builddir/build/BUILD/falkon-3.2.0/src/lib/session -I/builddir/build/BUILD/falkon-3.2.0/src/lib/sidebar -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tabwidget -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tools -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webengine -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webtab -I/usr/include -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngine -T/usr/share/PySide2/typesystems --output-directory=/builddir/build/BUILD/falkon-3.2.0/x86_64-redhat-linux-gnu/src/plugins/PyFalkon --api-version=5.15 /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/typesystem_pyfalkon.xml make[2]: *** [src/plugins/PyFalkon/CMakeFiles/PyFalkon_autogen.dir/build.make:162: src/plugins/PyFalkon/PyFalkon/pyfalkon_module_wrapper.cpp] Error 1 make[2]: Leaving directory '/builddir/build/BUILD/falkon-3.2.0/x86_64-redhat-linux-gnu' make[1]: *** [CMakeFiles/Makefile2:30462: src/plugins/PyFalkon/CMakeFiles/PyFalkon_autogen.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... Expected results: No error. Additional info: Possibly due to the package being built against an old toolchain? The rebuild in the F36 mass rebuild failed.
Seems fixed, except we now get a new error (this is from the aarch64 build, the x86_64 one hit a segmentation fault while trying to produce the error output, so the output is incomplete there): (pyfalkon) Clang: 1 diagnostic messages: /usr/include/qt5/QtCore/qglobal.h:45:12: fatal: 'type_traits' file not found /tmp/pyfalkon_global_xlYJjC.hpp:1:10: note: in file included from /tmp/pyfalkon_global_xlYJjC.hpp:1: /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23:10: note: in file included from /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h:23: /usr/include/qt5/QtNetwork/QHstsPolicy:1:10: note: in file included from /usr/include/qt5/QtNetwork/QHstsPolicy:1: /usr/include/qt5/QtNetwork/qhstspolicy.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qhstspolicy.h:43: /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43:10: note: in file included from /usr/include/qt5/QtNetwork/qtnetworkglobal.h:43: Keeping temporary file: /tmp/pyfalkon_global_xlYJjC.hpp shiboken: Error running ApiExtractor. Command line: --generator-set=shiboken --enable-parent-ctor-heuristic --enable-pyside-extensions --enable-return-value-heuristic --use-isnull-as-nb_nonzero --avoid-protected-hack -I/usr/include/qt5/ -I/usr/include/qt5/QtCore -I/usr/lib64/qt5//mkspecs/linux-g++ -I/usr/include/qt5/ -I/usr/include/qt5/QtGui -I/usr/include/qt5/ -I/usr/include/qt5/QtSql -I/usr/include/qt5/ -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/ -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngineCore -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngineWidgets -I/builddir/build/BUILD/falkon-3.2.0/src/lib/3rdparty -I/builddir/build/BUILD/falkon-3.2.0/src/lib/adblock -I/builddir/build/BUILD/falkon-3.2.0/src/lib/app -I/builddir/build/BUILD/falkon-3.2.0/src/lib/autofill -I/builddir/build/BUILD/falkon-3.2.0/src/lib/bookmarks -I/builddir/build/BUILD/falkon-3.2.0/src/lib/cookies -I/builddir/build/BUILD/falkon-3.2.0/src/lib/downloads -I/builddir/build/BUILD/falkon-3.2.0/src/lib/history -I/builddir/build/BUILD/falkon-3.2.0/src/lib/navigation -I/builddir/build/BUILD/falkon-3.2.0/src/lib/network -I/builddir/build/BUILD/falkon-3.2.0/src/lib/notifications -I/builddir/build/BUILD/falkon-3.2.0/src/lib/opensearch -I/builddir/build/BUILD/falkon-3.2.0/src/lib/other -I/builddir/build/BUILD/falkon-3.2.0/src/lib/plugins -I/builddir/build/BUILD/falkon-3.2.0/src/lib/popupwindow -I/builddir/build/BUILD/falkon-3.2.0/src/lib/preferences -I/builddir/build/BUILD/falkon-3.2.0/src/lib/session -I/builddir/build/BUILD/falkon-3.2.0/src/lib/sidebar -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tabwidget -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tools -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webengine -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webtab -I/builddir/build/BUILD/falkon-3.2.0/src/lib/3rdparty -I/builddir/build/BUILD/falkon-3.2.0/src/lib/adblock -I/builddir/build/BUILD/falkon-3.2.0/src/lib/app -I/builddir/build/BUILD/falkon-3.2.0/src/lib/autofill -I/builddir/build/BUILD/falkon-3.2.0/src/lib/bookmarks -I/builddir/build/BUILD/falkon-3.2.0/src/lib/cookies -I/builddir/build/BUILD/falkon-3.2.0/src/lib/downloads -I/builddir/build/BUILD/falkon-3.2.0/src/lib/history -I/builddir/build/BUILD/falkon-3.2.0/src/lib/navigation -I/builddir/build/BUILD/falkon-3.2.0/src/lib/network -I/builddir/build/BUILD/falkon-3.2.0/src/lib/notifications -I/builddir/build/BUILD/falkon-3.2.0/src/lib/opensearch -I/builddir/build/BUILD/falkon-3.2.0/src/lib/other -I/builddir/build/BUILD/falkon-3.2.0/src/lib/plugins -I/builddir/build/BUILD/falkon-3.2.0/src/lib/popupwindow -I/builddir/build/BUILD/falkon-3.2.0/src/lib/preferences -I/builddir/build/BUILD/falkon-3.2.0/src/lib/session -I/builddir/build/BUILD/falkon-3.2.0/src/lib/sidebar -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tabwidget -I/builddir/build/BUILD/falkon-3.2.0/src/lib/tools -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webengine -I/builddir/build/BUILD/falkon-3.2.0/src/lib/webtab -I/usr/include -I/usr/include/qt5/ -I/usr/include/qt5/QtWebEngine -T/usr/share/PySide2/typesystems --output-directory=/builddir/build/BUILD/falkon-3.2.0/aarch64-redhat-linux-gnu/src/plugins/PyFalkon --api-version=5.15 /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/pyfalkon_global.h /builddir/build/BUILD/falkon-3.2.0/src/plugins/PyFalkon/typesystem_pyfalkon.xml
Nothing jumps out at me with the error, could this have something to do with Qt being built with gcc and PySide being built with clang?
This is: https://bugreports.qt.io/browse/PYSIDE-787 NixOS has a workaround: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/python-modules/shiboken2/nix_compile_cflags.patch
(The problem is that Clang tries to be smart about system headers and assumes that system headers with a .h extension are C headers, not C++, so it does not search for transitively included headers in the C++ search path, only the C one.)
Scratch build started: https://koji.fedoraproject.org/koji/taskinfo?taskID=82283795 Let me know if it works and I'll do real builds.
The problem is, the scratch build is not in any buildroot, so it is a pain to test whether Falkon builds against it. Even for a local mock build, I have to jump through hoops to get it included. It would be easier to just do an official build.
Unfortunately I was at work and couldn't kick of a build but it's done now.
Unfortunately, the Falkon build still fails with the same error: https://koji.fedoraproject.org/koji/taskinfo?taskID=82283795
This bug appears to have been reported against 'rawhide' during the Fedora 36 development cycle. Changing version to 36.
Any update on the Falkon front?
To be honest, I have not looked into it anymore, because Falkon upstream states in the 3.2 release announcement: "It is unclear if the Python bindings work, they will likely be removed in future releases", so why should I spend time working on enabling them now if they are going away soon? (We have never shipped them so far.)
From the PYSIDE bug report there does not seem to be a solution proposed as of yet. Does adding the referenced patch improve the situation practically?
Kevin, should we just close this as CANTFIX?
I am closing this UPSTREAM, since it is an upstream issue (still open there) and it seems we are unable to fix this downstream.