如何修复Perl的区域设置警告?

前端之家收集整理的这篇文章主要介绍了如何修复Perl的区域设置警告?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我运行perl,我得到警告:
perl: warning: Setting locale Failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),LC_ALL = (unset),LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

如何解决它?

解决方法

您的操作系统不知道en_US.UTF-8。

你没有提到一个特定的平台,但我可以重现你的问题:

% uname -a
OSF1 hunter2 V5.1 2650 alpha
% perl -e exit
perl: warning: Setting locale Failed.
perl: warning: Please check that your locale settings:
    LC_ALL = (unset),LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

我的猜测是你使用ssh从较新的台式机连接到这个较旧的主机。 / etc / ssh / sshd_config通常包含

AcceptEnv LANG LC_*

这允许客户端将这些环境变量的值传播到新会话中。

如果您不需要完整的语言环境,警告会提示您如何压制它:

% env LANG=C perl -e exit
%

或使用bash:

$ LANG=C perl -e exit
$ 

要永久解决问题,请选择其中一个

>在较旧的主机上,在shell的初始化文件中设置LANG环境变量。
>在客户端修改您的环境,例如,而不是ssh hunter2,使用命令LANG = C ssh hunter2。
>如果您有管理员权限,请通过注释掉本地/ etc / ssh / ssh_config文件中的SendEnv LANG LC_ *行,停止发送环境变量。 (感谢this answer.有关OpenSSH的更多信息,请参阅Bug 1285)

猜你在找的Perl相关文章