Вопрос

Я получаю доступ к компьютеру Ubuntu, используя PuTTY и используя gcc.

Значение по умолчанию LANG переменная среды на этом компьютере имеет значение en_NZ.UTF-8, что заставляет GCC думать, что PuTTY способен отображать текст в формате UTF-8, чего, похоже, нет.Может быть, это мой шрифт, я не знаю - он делает это:

foo.c:1: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â at end of input

Если я установлю его с помощью export LANG=en_NZ, тогда это заставляет GCC вести себя корректно, я получаю:

foo.c:1: error: expected '=', ',', ';', 'asm' or '__attribute__' at end of input

но тогда это приводит к тому, что все остальное идет наперекосяк.Например

man foo
man: can't set the locale; make sure $LC_* and $LANG are correct

Я просмотрел Google и ни за что на свете не смогу найти, что мне нужно туда вставить, чтобы он просто использовал ASCII. en_NZ.ASCII не работает, как и все остальные вещи, которые я могу найти.

Спасибо

Это было полезно?

Решение

LANG=en_NZ это правильно.Однако вы должны создать файлы локали для en_NZ.

Для Ubuntu отредактируйте /var/lib/locales/supported.d/local и добавить en_NZ ISO-8859-1 к файлу.Если ваша система представляет собой другой дистрибутив (включая Debian), расположение будет другим.Посмотрите на /usr/sbin/locale-gen и посмотрите, где он хранит эту информацию.

После этого запускайте locale-gen для создания en_NZ файл локали.Надеюсь, это поможет!

Другие советы

Putty может отображать utf - я думаю, что это по внешнему виду -> перевод (или что-то в этом роде, у меня сейчас нет к нему доступа).

Для Debian 5.0 Ленни:

aptitude install locales

Если это уже установлено:

dpkg-reconfigure locales
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top