Summary: | KDE Flatpak 5.12 Sdk broken in ARM | ||
---|---|---|---|
Product: | [Developer tools] Qt/KDE Flatpak Runtime | Reporter: | Rinigus <rinigus.git> |
Component: | general | Assignee: | Aleix Pol <aleixpol> |
Status: | REOPENED --- | ||
Severity: | normal | CC: | jgrulich, mirh, rinigus.git |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | Example JSON taken from a part of Pure Maps |
Description
Rinigus
2020-01-14 18:39:48 UTC
Same issue is observed for KDE 5.13 Would you be able to investigate a bit what could be wrong? I'm quite clueless myself about qmake. :/ I will look into it and will report back It maybe some issue with my local setup. On Flathub servers, all is working as expected. I keep the issue open for now, will try to figure out what's going on. If someone can test cross-building of ARM package (as attached), would be great to know the results. Feel free to close as it looks to be an issue with my emulation environment. When running on native platform, all works as expected. I will have to figure out meanwhile what's wrong in my setup, but that's not related to KDE Flatpak environment as such. Alright, closing for now. Thanks for reaching out anyway, glad you're using the runtime! :) I think I have been hitting some issue with statx system call which is triggered in QEMU or ARM32. Haven't looked deeper, but look to be related: https://bugreports.qt.io/browse/QTBUG-64490 https://bugreports.qt.io/browse/QTBUG-68205 https://bugreports.qt.io/browse/QTBUG-66930 I am reopening it as I think that statx call was expected to be disabled. Namely, I believe we are hitting issue in QEMU https://bugs.launchpad.net/qemu/+bug/1861341 . As a result, we cannot use qmake (I suspect that https://invent.kde.org/kde/flatpak-kde-runtime/issues/3 was caused by the same issue). Looks like you tried to disable statx and rename2 in https://invent.kde.org/kde/flatpak-kde-runtime/blob/qt5.12lts/patch/qtbase-avoid-hardcoding-kernel-version.patch However, statx is disabled only for Android in Qt: https://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/io/qfilesystemengine_unix.cpp?h=5.12#n98 . For Linux, it looks like it will depend on local sources. So, if we wish to disable statx, we would have to ensure that https://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/io/qfilesystemengine_unix.cpp?h=5.12#n313 will fail. I guess a patch with "#undef STATX_BASIC_STATS" in somewhere after includes in qtbase.git/tree/src/corelib/io/qfilesystemengine_unix.cpp would resolve it. If you think that its inappropriate to reopen it and should be closed, please do so. As such, its not KDE Flatpak bug, but workaround for qemu issue. But it does hinder development with the runtime. Maybe statx doesn't need to be disabled anymore with Qt 5.13. I will try to build it with and without disabled statx and verify it. The reason why we disabled them was to avoid hardcoding kernel version requirements. With all those enabled, Qt build was requiring kernel 3.17.y or something like that, why without those enabled it was kernel 2.x. Re disabling statx: I am arguing that the patch which you use to disable statx is not working. As such, you have statx enabled right now. If you try to build KDE runtime for arm using QEMU, it will fail quite early as soon as qmake is created. And it will fail due to the missing statx in QEMU/arm, as it looks to me. So, by enabling statx, you are making it impossible to compile for ARM using qmake and on regular workstations. For me 5.13 doesn't work either and this time nor with qmake nor cmake - basically no way to build. Can't tell whether cmake failure is also statx related, as they seem to have some checks for permissions: https://github.com/Kitware/CMake/blame/master/Utilities/cmlibuv/src/unix/fs.c#L1154 (In reply to Jan Grulich from comment #9) > The reason why we disabled them was to avoid hardcoding kernel version > requirements. With all those enabled, Qt build was requiring kernel 3.17.y > or something like that, why without those enabled it was kernel 2.x. If I look at the sources, that was never committed though. I can only see bug 403042 which pertains flatpak specifically, but qt-base is still untouched to this day. I just banged my head like two afternoons before realizing sddm wasn't booting on 3.16 due to this. (In reply to mirh from comment #11) > (In reply to Jan Grulich from comment #9) > > The reason why we disabled them was to avoid hardcoding kernel version > > requirements. With all those enabled, Qt build was requiring kernel 3.17.y > > or something like that, why without those enabled it was kernel 2.x. > > If I look at the sources, that was never committed though. > > I can only see bug 403042 which pertains flatpak specifically, but qt-base > is still untouched to this day. I just banged my head like two afternoons > before realizing sddm wasn't booting on 3.16 due to this. This was pushed only to our Flatpak builds, not to upstream. |