modm-io/lbuild

Interesting Quirk on Windows Machines

thestumbler opened this issue · 2 comments

I was helping a colleague to get the MODM tool chain installed on his Windows computer. He was substantially successful on his own, but ran into a problem with LBUILD. He would get a bunch of Unicode-related error messages whenever he tried to run it.

But across the lab, I had two Windows machines almost identically configured that did work with LBUILD. Finally, I suspected the problem must be related to the system language. My two Windows computers were configured with English as the main OS language and Korean as a secondary language. His computer was the opposite, Korean with English secondary.

It seemed like a long shot, but I remembered there is an obscure setting to tell the OS how to treat non-Unicode files, basically to specify a default code page. Mine was set to English, and his was set to Korean. He changed it to English, rebooted, and voila! It worked like a champ.

This seems to be the Windows equivalent to this issue in our installation guide?

If you get a UnicodeEncodeError when calling lbuild, you may need to add export LC_ALL=C.UTF-8 to your .bashrc. Consult the internet until python3 -c "import sys; print(sys.stdout.encoding)" returns UTF-8.

Ah ha! In all my distraction, I missed that. Although had I seen it, I would have been puzzled about using .bashrc in Windows. This problem happened with using the command line only. When using LBUILD in WSL, there were no issues.