Home > Linux > Perl warning: Setting locale failed

Perl warning: Setting locale failed

Напоследък се занимавам доста с виртуални сървъри и главният проблем, който срещах беше, че Perl не разпознава текущият locale инсталиран на машината.

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = “en_US:en”,
LC_ALL = (unset),
LANG = “en_US.ISO-8859-15”
are supported and installed on your system.

След много промени по различни конфиг файлове и директории намерих просто решение:

1
apt-get install --reinstall language-pack-en

А именно – преинсталираме language pack-a и това решава проблема 🙂

Categories: Linux Tags:
Вижте всички статии от
Technology lover
Този автор е написал 156 статии

  • apt-get install locales
    Според мен също решава проблема. /Виртуалните сървъри се правят по идеографски начин, ако те мързи {доставчика ти го мързи}. Съответно base системата не се качва на 100%/

  • Благомир Иванов

    Да, така е. Това също може да реши проблема при някои случай, но в моя не беше решение и затова не съм го споменал 🙂

    А колкото до сървърите – не съм ги правил аз, затова доста от нещата са орязани.

  • 1) няма такова понятие като “текущият locale инсталиран на машината”
    2) може да видиш кои локали са инсталирани с

    $ locale -a

    3) ако en_US.ISO-8859-15 не присъства, трябва да си го инсталираш или да си сетнеш LANG на някой от съществуващите локали. С променливите от обкръжението LC_* и LANG се казва на програми, подържащи локализация, коя локализация да ползат. При повечето unix базирани системи, тези променливи са сетнати в /etc/profile или ~/.profile (което идва от /etc/skel/.profile). Добре е да ползваш en_US.utf8 или bg_BG.utf8, все пак ISO 8859 aka lantin-* е наследство от 20-ти век. В случай, че системата е антична ще минеш с ISO-8859-1 aka latin1.

    Между другото специално за perl е документирано какво означава горното предупреждение и как реагира perl в този случай: http://perldoc.perl.org/perllocale.html