buildroot에서 유니코드 지원을 활성화하려면 어떻게 해야 합니까?

buildroot에서 유니코드 지원을 활성화하려면 어떻게 해야 합니까?

유니코드 문자를 표시할 수 있는 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

그런데 이미지를 빌드할 때 텍스트 파일에 저장되거나 터미널에 입력된 유니코드 텍스트가 깨져서 나옵니다.

제가 테스트하는 한 가지 방법은 echo -e '\xe2\x82\xac'셸에서 실행하는 것입니다. 이것은 내 Mac 터미널에서 수행되는 유로 기호를 인쇄해야 합니다. 그러나 결과 iso 이미지에는 다음이 표시됩니다.

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

더 완전한 맥락

답변1

unicode_start데비안에는 UTF-8용 시스템을 설정하는 쉘스크립트 가 있습니다 . 쉘에서 실행해야 하는 주요 명령은 다음과 같습니다.

printf '\033%%G'
stty iutf8

매우 흥미로운 StackExchange 스레드에서 이를 발견했습니다.Linux 콘솔에서 UTF-8 지원을 활성화하려면 어떻게 해야 합니까?

또한 내 빌드루트 시스템에 알맞은 유니코드 설정을 하는 데 어려움을 겪고 있으며 해당 명령이 약간 도움이 되었지만 대상 시스템에서 올바르게 실행되지 않는 UTF-8로 인코딩된 쉘스크립트 관련 문제에 여전히 직면하고 있습니다.

도움이 되었기를 바랍니다! 건배, 휴그

관련 정보