`Gtk-WARNING ** : C 라이브러리는 로케일을 지원하지 않습니다. `커맨드 라인에서 앱을 시작할 때


31

나는 대답을 얻지 못했지만 아무것도하지 않았으며 이것은 흥미로운 주제입니다. Ubuntu 12.04에서 gedit에서 파일을 열거 나 dpkg의 명령 줄에서 작업하는 경우 "로케일이 지원되지 않습니다. 기본"C ​​"라이브러리로 돌아가는 오류"와 아래의 오류가 표시됩니다.

Gtk-WARNING **: Locale not supported by C library.
    Using the fallback 'C' locale.

로케일이 고장난 것 같습니다. 우분투를 정확히 어떻게 설치 했습니까? 로케일이 올바르게 구성되지 않은 방식으로 설치 한 것 같습니다. 그에 대한 좀 더 많은 정보를 제공하십시오 에서 귀하의 질문에 (편집을). 그리고 C현지화가 불가능한 경우 로케일은 원래 위치로 돌아갑니다. 그것은 C 프로그래밍 언어에서 온 것입니다.
gertvdijk

답장을 보내 주셔서 감사합니다. 내 우분투 설치는 Windows 디렉토리 안에있는 폴더입니다. 왜 설치했는지 알고 있습니다. 나는 설치가 게으르고 리눅스 악마가 나를 위해 그 부분을 수행하도록 허용했다.
Diogenes Lantern

답변:


30

먼저 라이브러리 언어가 설치되어 있는지 확인하십시오

sudo apt-get install language-pack-en-base,

예를 들어.

그런 다음 수퍼 유저로서 Ubuntu가 자동으로 구성하도록하여 작업 시간을 단축하십시오.

sudo dpkg-reconfigure locales

설정이 올바른지 확인하십시오. 그러나 LANG=또는 LANGUAGE=설정이 비어 있으면 명령 줄에서 다음을 실행하십시오.

locale -a

설치되어 사용 가능한 로케일을 생성합니다.

상황에 맞는 생성 된 출력에서 ​​로캘을 선택하고 해당 설정을 내보내 로캘을 바꿉니다. 예를 들면 다음과 같습니다.

export LC_ALL="en.utf-8"

수동 설치를 사용 export하여 사용자 지정 로캘을 수동으로 설치하는 수동으로 로캘을 설정하려면 먼저 위와 같이 설정을 실행하십시오.

그런 다음 설치하고 싶은 말은 "en_us-8"언어 만의 또 다른 로케일에 대한 필요성을 NUMERIC하고 TIME사용하실 수 있습니다, "en_NZ.utf-8"(기억이는 대소 문자를 구분) 또는 LANGUAGE="en_GB.utf-8"NUMERIC="en.dk.ISO-8859-15". 뉴질랜드를 여행하면서 로케일을 바꿀 수있었습니다 LANGUAGE="en.NZ". 독일의 경우 아래 예제와 같이 로케일 pkg를 설치하고 터미널에 입력하면됩니다.

export LC_ALL="en_US"
export LANG="en_US"
export LANGUAGE="en_NZ"
export C_CTYPE="en_US"
export LC_NUMERIC=
export LC_TIME=en"en_US"

LC_ALL= 비어있을 수 있습니다.


3

먼저:

sudo apt-get purge locales

그때:

sudo aptitude install locales

그리고 유명한 :

sudo dpkg-reconfigure locales

이것은 로케일 시스템을 제거한 다음 로케일을 다시 설치하고 libc6을 2.19에서 2.13으로 다운 그레이드합니다. 이것이 문제입니다. 그런 다음 로케일을 다시 구성하십시오.


1
이것은 매우 오해의 소지가 있습니다. 이 대답을 절대 사용하지 마십시오. 첫 번째 명령은 데이터와 함께 많은 소프트웨어를 삭제합니다 (예 :) postgresql.
Eric Wang

@EricWang 당신은 다른 소프트웨어를 떨어 뜨릴 수 있다고 정확하며, 그 소프트웨어는 libc6 2.19 라이브러리 (또는 그 이상)에 의존하기 때문에 일어날 것입니다. 종종 소프트웨어가 시스템을 업그레이드하여 C 라이브러리에서 지원하지 않는이 로케일 상태로 만든 소프트웨어 인 경우가 종종있었습니다. 어쨌든 확인하기 전에 제거 할 대상을 검토해야합니다.
tkjef

3

이것은 우분투 16.04를 기반으로하는 민트 메이트 18에서 두 번 이상 발생했기 때문에 누군가가 필요로하는 경우 찾은 솔루션을 공유하고 싶습니다.

단계 :

(이 단계는 민트 메이트에서 작동하지만 우분투는 비슷한 구성을 가질 수 있습니다.)

  • "언어 설정"을여십시오.
  • 언어가 없으면 설치하십시오. (저는 영어 외에 중국어 및 일본어를 설치하겠습니다)
  • 옵션 Language및의 Region경우 기본 언어가 올바른지 확인하십시오 (예 : "English, United States UTF-8"로 설정)
  • 변경 사항이 있으면 재부팅하십시오.
  • 괜찮은지 확인하십시오.

0

로케일을 사용하면 시스템과 충돌하는 언어를 제거해야합니다.이 기능은 우분 티 kylin 16.04에서 우분투 14.04 위에 설치했습니다.


0

그것은 그놈 터미널로 가서 apt --fix locales 명령을 입력하고 리눅스를 재부팅하면 터미널 오류가 끝날 때까지 기다렸습니다. 이번에는 모니터에있을 것입니다.


0
$ mkdir -p $HOME/.locale
$ I18NPATH=./wrk/ localedef -f UTF-8 -i fi_SE $HOME/.locale/fi_SE.UTF-8
$ LOCPATH=$HOME/.locale LC_ALL=fi_SE.UTF-8 date
$ echo "export LOCPATH=\$HOME/.locale" >> $HOME/.bashrc
$ echo "export LANG=fi_SE.UTF-8" >> $HOME/.bashrc

LOCALE에 대한 fi_SE 및 UTF-8 또는 utf8 참조


0

홈 디렉토리 도트 파일을 새 컴퓨터로 마이그레이션 할 때이 문제를 직접 일으킬 수 LC_있었지만 파일 검색에 대한 원인으로 잠시 동안 원인을 식별하지 못했습니다 LOC.

~/.bashrc복사 한 파일 I는 다음 있었다 :

export LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale

(여기서 특정 값은 이전 시스템에서 GNU Guix를 사용한 이전 실험을 고려한 것이지만 관련 변수는 단순히 환경 변수가 이제 유효하지 않은 경로로 설정되었다는 것입니다.)

다양한 프로그램을 실행할 때 다음과 같은 오류가 발생했습니다.

Warning: locale not supported by C library, locale unchanged

그리고 실행할 때 이러한 오류 locale:

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

줄을 제거하거나 주석 처리하여 LOCPATH문제를 해결했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.