On 07/19/2023 18:14, Thiago Macieira wrote: On Wednesday, 19 July 2023 08:46:27 PDT Cristian Adam via Development wrote:
Hi, we are thinking of migrating from GCC MinGW to LLVM MinGW. The ticket in question is [QTBUG-107516] Migrate from GCC MinGW to LLVM-MinGW - Qt Bug Tracker<https://bugreports.qt.io/browse/QTBUG-107516><https://bugreports.qt.io/browse/QTBUG-107516> TL;DR: I have nothing against *adding* Clang and I have no skin in the game for the binaries (I always tell people to NEVER use precompiled binaries anyway). So you have my full support, so long as GCC is still supported and tested in the CI. Oh well, I may support it myself, like I support FreeBSD/ Clang. GCC would be tested with Linux on the CI. QNX is also using GCC 🙂 For a while now we have a CI configuration testing with LLVM MinGW. The benefits of the LLVM MinGW<https://github.com/mstorsjo/llvm-mingw><https://github.com/mstorsjo/llvm-mingw> would be (quote from the website): * Support for targeting ARM/ARM64 (while GCC obviously does support these architectures, it doesn't support Windows on ARM) That's a new architecture and doesn't require replacing anything. I guess we could use LLVM-MinGW only for Windows Arm64, but I think it's easier to have one toolchain for the MinGW story. * Support for generating debug info in PDB format How useful is this? Does gdb support this format? If not, then you wouldn't be able to debug stuff, meaning this is not a benefit at all. At How to open Windows crash dumps? | Qt Forum<https://forum.qt.io/topic/146109/how-to-open-windows-crash-dumps> this is one case of using Windows minidump files with MinGW, which is not supported. With the LLVM MinGW and the PDB format I expected this to ... work. I've pushed an example at cristianadam/MaxiDump (github.com)<https://github.com/cristianadam/MaxiDump/> it works with MSVC and clang-cl. With LLVM MinGW I've got the pdb and the dmp files, but WinDbg would not resolve when typing .excr @Martin Storsjö Any clues why it didn't work? At Windows Runtime (WinRT) APIs support · Issue #307 · mstorsjo/llvm-mingw (github.com)<https://github.com/mstorsjo/llvm-mingw/issues/307><https://github.com/mstorsjo/llvm-mingw/issues/307> we can see that starting with LLVM 15 and with a recent release of C++/WinRT<https://github.com/microsoft/cppwinrt/releases><https://github.com/microsoft/cppwinrt/releases> or mingw-w64-cppwinrt<https://github.com/alvinhochun/mingw-w64-cppwinrt/releas es/><https://github.com/alvinhochun/mingw-w64-cppwinrt/releases/> we could have feature parity with the Visual C++ toolchain. I need a little more background on this: what are these APIs useful for? What gets enabled when they are supported? At Bluetooth under Windows with mingw/msvc? | Qt Forum<https://forum.qt.io/topic/137939/bluetooth-under-windows-with-mingw-msvc> we can see that for Qt6 MinGW doesn't support bluetooth anymore. That's because starting with Qt6 only the WinRT backed for Bluetooth is supported. Cheers, Cristian.
-- Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development