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_startDebian에는 시스템을 UTF-8로 설정할 수 있는 쉘스크립트 가 있습니다 . 셸에서 실행해야 하는 주요 명령은 다음과 같습니다.

printf '\033%%G'
stty iutf8

매우 흥미로운 StackExchange 스레드에서 다음을 발견했습니다.Linux 콘솔에서 UTF-8 지원을 활성화하는 방법은 무엇입니까?

또한 내 buildroot 시스템에서 적절한 유니코드 설정을 얻으려고 노력하고 있으며 이러한 명령이 약간 도움이 되지만 대상 시스템에서 올바르게 실행되지 않는 UTF-8로 인코딩된 쉘스크립트 문제에 여전히 직면하고 있습니다.

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

관련 정보