What to do when bitbake says " Sad Locale, Need UTF-8"
If bitbake says:
Please use a locale setting which supports utf-8.
Python can't change the filesystem locale after loading so we need a utf-8 when python starts or things won't work.
You need a locale. My example will target en_US.UTF-8. You can choose your favorite (native?) locale as long as it's UTF8.
Ubuntu/Debian
tt@7e801839f06a:~/build$ sudo apt-get install locales
tt@7e801839f06a:~/build$ sudo dpkg-reconfigure locales
<pick your favorite, in my case en_US.UTF-8 UTF-8, then default the language to en_US.UTF-8>
tt@7e801839f06a:~/build$ sudo locale-gen en_US.UTF-8
Generating locales (this might take a while)...
en_US.UTF-8... done
Generation complete.
tt@7e801839f06a:~/build$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
tt@7e801839f06a:~/build$ export LANG=en_US.UTF-8
Fedora
Fedora:24
sudo dnf install glibc-langpack-en
sudo dnf reinstall glibc-common
export LANG=en_US.UTF-8
OpenSuse
OpenSuse:42.1
bash-4.2$ sudo zypper install glibc-locale
bash-4.2$ export LANG=en_US.UTF-8
for Dockerfiles
##Configure timezone and locale
echo "Europe/Oslo" > /etc/timezone && \
dpkg-reconfigure -f noninteractive tzdata && \
sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
sed -i -e 's/# nb_NO.UTF-8 UTF-8/nb_NO.UTF-8 UTF-8/' /etc/locale.gen && \
echo 'LANG="nb_NO.UTF-8"'>/etc/default/locale && \
dpkg-reconfigure --frontend=noninteractive locales && \
update-locale LANG=nb_NO.UTF-8