On Thu, Oct 08, 2026 at 11:49:40AM +0200, Bruno Haible wrote: > Patrice Dumas wrote: > These two gettext FAQ entries should help: > https://www.gnu.org/software/gettext/FAQ.html#integrating_noop > https://www.gnu.org/software/gettext/FAQ.html#windows_setenv
We definitively do not set the environment variables as explained in the FAQ entry. The platform libc is ucrt, though, so I do not know to what extent this applies. > This could be the case if the setlocale function is called by Perl. > If it's called by C code, the setlocale override in <libintl.h> and in Gnulib > fix that problem. > > > Another > > possibility is if you rely on the LC_MESSAGES category, which Windows > > doesn't support. > > Likewise: The <libintl.h> and Gnulib provide the LC_MESSAGES category, > since the Windows runtime library lacks it. We skip the code that sets a locale to something else than C for _WIN32. My feeling is that it is why it does not work. The MSYS2 mingw with ucrt gcc is probably more like traditional UNIX than what Eli tested on previously, and we probably need to enable this code (and maybe add more gnulib functions if it appears to be needed). Eli, would you know what #ifdef use to do something different on the platform you used previously (MSYS with mingw, maybe?) and this new MSYS2 with mingw ucrt gcc? -- Pat
