buildroot で Unicode サポートを有効にするにはどうすればいいですか?

buildroot で Unicode サポートを有効にするにはどうすればいいですか?

Unicode 文字を表示できる 32 ビット x86 ISO イメージを buildroot からビルドしたいです。どうすればできますか?

  • ではmake menuconfig、私はBR2_ENABLE_LOCALE_WHITELIST="C en_US en_US.UTF-8"
  • では、、、、、、、、を設定しましmake busybox-menuconfigた。​CONFIG_UNICODE_SUPPORT=yCONFIG_UNICODE_USING_LOCALE=yCONFIG_FEATURE_CHECK_UNICODE_IN_ENV=yCONFIG_UNICODE_COMBINING_WCHARS=yCONFIG_UNICODE_WIDE_WCHARS=yCONFIG_UNICODE_BIDI_SUPPORT=yCONFIG_UNICODE_NEUTRAL_TABLE=yCONFIG_UNICODE_PRESERVE_BROKEN=y
  • コンパイルマシン(Debianベース)にパッケージをインストールしてlocales実行しました。sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen; locale-gen

しかし、イメージをビルドすると、テキスト ファイルに保存された、またはターミナルに入力された Unicode テキストが文字化けして表示されます。

テストする方法の 1 つは、echo -e '\xe2\x82\xac'シェルで実行することです。これにより、ユーロの記号が印刷されるはずですが、Mac のターミナルでは実際に印刷されます。ただし、結果の ISO イメージでは、次のようになります。

unfortunate # echo -e '\xe2\x82\xac'
â¬

より完全なコンテキスト

答え1

unicode_startDebian には、システムを UTF-8 用に設定するシェルスクリプトがあります。シェルで実行する必要がある主なコマンドは次のとおりです。

printf '\033%%G'
stty iutf8

私はそれらを非常に興味深い StackExchange スレッドで見つけました:Linux コンソールで UTF-8 サポートを有効にするにはどうすればいいですか?

私も、buildroot システムで適切な Unicode 設定を行うのに苦労しており、これらのコマンドは少しは役立ちましたが、ターゲット システムで正しく実行されない UTF-8 でエンコードされたシェルスクリプトの問題にまだ直面しています。

お役に立てれば幸いです。よろしくお願いします。Hugues

関連情報