what you want is basically a ucrt multilib. However, neither glibc provides the same toggle too. i do not see a good reason for your request. Get Outlook for Android ________________________________ From: Pali Roh¨¢r Sent: Saturday, November 26, 2022 2:09:09 PM To: LIU Hao Cc: gcc@gcc.gnu.org ; mingw-w64-public@lists.sourceforge.net Subject: Re: [Mingw-w64-public] gcc parameter -mcrtdll= for choosing Windows C RunTime DLL library On Monday 21 November 2022 13:21:53 LIU Hao wrote: > ÔÚ 2022/11/20 23:06, Pali Roh¨¢r дµÀ: > > Thank you for explaining more details. My simple patch takes this in > > care and defines also __MSVCRT_VERSION__ to the correct value based on > > -mcrtdll parameter. > > Apologies for reading your message only partially. I thought your patch was > the same as MSYS2's. It turns out that you have made further progress; > that's very kind of you. > > As for the patch itself: It's probably safe to switch between MSVCR* DLLs, > but switching from MSVCR* to UCRT requires a complete rebuild due to > differences in implementation of stdio functions and definition of `time_t` > on x86. There are more reasons, for example, that MSVCR80 and 90 require > architecture-specific manifests to load, and MSVCR80 to 120 are not > pre-installed and have to be installed by users. These could explain why > `-mcrtdll=` hasn't gained wide use, while UCRT-based toolchains have. > > So, the patch may be acceptable, but I don't think it will solve the issue > for you. A user should usually choose MSVCRT or UCRT, which however requires > rebuilding the CRT. For those who really really wish to link against > MSVCR100 for example, it's always doable to pass `-nodefaultlibs` to GCC, > and specify desired libraries explicitly. The ultimate goal could be to improve mingw-w64 build process to compile one set of libraries which would work with both msvcrt and ucrt. There is already discussion about it in separate mingw-w64 email thread. Probably not easy task, but I think it can be possible. Anyway, in any case, this work is independent of gcc and independent of introduction of -mcrtdll= gcc switch. So I think this switch still can be useful. _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public