Details
-
Bug
-
Resolution: Out of scope
-
P3: Somewhat important
-
None
-
5.12.4
-
None
Description
I have cross-compiled Qt with MinGW w64 on Linux and now I am trying to deploy a Qt application cross-compiled for Windows.
I observed multiple issues:
- windeployqt invokes the first qmake found in the PATH. That is not necessarily the correct qmake. https://code.qt.io/cgit/qt/qttools.git/tree/src/shared/winutils/utils.cpp#n502 This bug applies to all platforms.
- The wrong instance of readPeExecutable() is compiled into the binary and so it fails with "not implemented". https://code.qt.io/cgit/qt/qttools.git/tree/src/shared/winutils/utils.cpp#n976 Probably because windeployqt is compiled as a host utility and thus Q_OS_WIN is not defined in that case. This ifdef guard seems wrong to me. The functionality should always be compiled in or otherwise guarded by a target-dependent define.