buildrootでUnicodeサポートを有効にする方法は?

buildrootでUnicodeサポートを有効にする方法は?

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

  • 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でエンコードされたシェルスクリプトの問題にも直面しています。

役に立ったことを願っています!乾杯、ヒューグ

おすすめ記事