On Mon Aug 7 18:29:48 2023 +0000, Maxim Karasev wrote:
Here's a minimal working example:
#include <windows.h> #include <stdio.h> #include <locale.h> int __cdecl wmain(void) { setlocale(LC_ALL, ""); wprintf(L"Hello, world!\n"); wprintf(L"Привет, мир!\n"); wprintf(L"こんにちは世界!\n"); }
$ winegcc -bx86_64-windows mwe.c -o mwe -municode $ wine mwe.exe Hello, world! $ LC_ALL=ru_RU.UTF-8 wine mwe.exe Hello, world! Привет, мир!
Without the `setlocale()` line only English is printed regardless of `LC_ALL`.
Only English is printed correctly here on US English Windows 10.