In src/gui/configure.pri there's:
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.