这个问题已经存在一段时间了,在网上搜索解决方案时,他们总是会提到问题发生时用户正在做什么。对我来说,同样的问题发生在两个不同的操作中,这让我认为这可能与 Python 的权限有关。
尝试安装 fswebcam 时弹出以下代码:
Fatal Python error: Py_Initialize: Unable to get the locale encoding
LookupError: unknown encoding: UF-8
尝试了其他论坛的解决方案,我尝试将 Python 更新到 3.7.1,根据https://gist.github.com/dschep/24aa61672a2092246eaca2824400d37f。安装软件包时,会弹出相同的错误(还指定了 UF-8)。大多数论坛帖子都提到了在问题发生时除安装 fswebcam 之外的操作,我似乎找不到问题所在。
当尝试更新 Xserver 时,为了让 startx 再次工作,发生了相同的致命 Python 错误。
sudo apt-get install xserver-xorg-legacy
摘自上一篇博文:https://www.raspberrypi.org/forums/viewtopic.php?t=171843
我的Linux内核和固件版本分别如下:
Linux Olijf 4.14.50-v7+ #1122 SMP 2018 年 6 月 19 日星期二 12:26:26 BST armv7l GNU/Linux
2018 年 6 月 7 日 15:31:38 版权所有 (c) 2012 Broadcom 版本 4800f08a139d6ca1c5ecbee345ea6682e2160881 (干净) (发布)
我觉得我已经看过了所有关于无法访问区域设置编码的论坛帖子,但我希望我错了,有人知道问题可能出在哪里。希望我提供了足够的信息,如果没有,我很乐意遵循指示!
编辑:来自终端命令区域设置的输出
$ locale
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_GB.UTF-8
LANGUAGE=
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=
$ locale -a
locale: Cannot set LC_COLLATE to default locale: No such file or directory
C
C.UTF-8
POSIX
en_GB.utf8
在此先感谢所有试图提供帮助的人。
答案1
根据 Gunnar Hjalmarsson 提供的信息,我的问题的答案如下:
“嗯……即使 locale -a 命令显示已生成,它也会抱怨 en_GB.UTF-8 区域设置。很奇怪。也许可以尝试重新生成区域设置:sudo locale-gen en_GB.UTF-8”
这解决了问题!非常感谢!!