[Development] QThread::create mandatory in Qt 6?
tony.sarajarvi at qt.io
Fri Nov 20 20:22:40 CET 2020
>The big problem I see on Windows is unfortunately not the C++ standard library, but the C standard library. MinGW defaults to crtdll, the one from MSVC 6, which is not >C99-compliant (MSVC 6 is from 1998 after all). A better alternative exists in the form of the Universal CRT, but that only comes by default with Windows 10, so we'd need to >drop support for 8.1 -- have we done that? -- and recompile GCC and/or LLVM so they ask the linker to link to ucrt.
I have no idea what I'm talking about but I've currently set myself to a receive mode for everything regarding these compilers. So I tried to educate myself and stumbled upon this: https://www.cs.colorado.edu/~main/cs1300/doc/mingwfaq.html
msvcrt vs crtdll?
Mingw requires the Microsoft runtime libraries. You'll need either crtdll.dll or msvcrt.dll on a system in order to run a program. There are two distributions of mingw, one for each runtime library option. Use the version of mingw for the type of runtime library you wish to work with. Which is better? That depends on what you need. Crtdll is on all Win32 systems, but is no longer updated. It is available on platforms such as Windows 3.11/Windows NT 3.5 and platforms that use Win32s. Msvcrt is not guaranteed to be on every Windows operating system, but it is more up-to-date and may offer more features. It handles threading better than crtdll and supplies functions such as _i64toa and _atoi64 that crtdll doesn't. There is a possibility that crtdll may not be supported in future releases of mingw.
And do we have to mention or say mingw-w64 every time we say mingw? Or can we take that for granted?
More information about the Development