Details
-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
6.0
Description
In src/gui/configure.pri there's:
defineTest(qtConfTest_qpaDefaultPlatform) {
name =
!isEmpty(config.input.qpa_default_platform): name = $$config.input.qpa_default_platform
else: !isEmpty(QT_QPA_DEFAULT_PLATFORM): name = $$QT_QPA_DEFAULT_PLATFORM
.......
}
Note the check for the QT_QPA_DEFAULT_PLATFORM qmake variable.
This is set in various mkspecs/devices files.
We currently lack this behaviour in the CMake port, which means most cross-compiling Linux targets get 'xcb' as the default qpa plugin, despite xcb most likely not being available.
We should find a way to specify and port this mechanism to CMake.
A workaround when launching applications is to set the QT_QPA_PLATFORM env var.
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTBUG-87805 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
356812,5 | Improve handling of QT_QPA_DEFAULT_PLATFORM | dev | qt/qtbase | Status: NEW | 0 | 0 |
356837,3 | Add the check if device integration can be built before make it default | dev | qt/qtbase | Status: NEW | 0 | 0 |
356845,1 | Add an explicit definition of the QT_QPA_DEFAULT_PLATFORM for QEMU targets | dev | qt/qt5 | Status: NEW | +1 | 0 |