python3.2 在 aix6.1 上出错

1 投票
1 回答
930 浏览
提问于 2025-04-16 20:09

我在AIX 6.2服务器上编译了Python 3.2,但它无法正常工作。出现了这样的错误:

Fatal Python error: Py_Initialize: Unable to get the locale encoding
UnicodeEncodeError: 'filesystemencoding' codec can't encode character '\uda18' in position 28: Invalid wide character
IOT/Abort trap(coredump)

任何帮助都很欢迎。

xxxxxxxxxxxxxx

/home/hei/bin>echo LANG:$LANG LC_CTYPE:$LC_CTYPE

LANG:Zh_CN.gbk LC_CTYPE:

/home/hei/bin>export LANG=en_US.utf-8 && ./python3 找不到与平台无关的库 找不到与平台相关的库 考虑设置$PYTHONHOME为[:] ==================字符集[ISO8859-1] ==================字符集[]

编码[ISO8859-1]运行_PyCodec_Lookup错误 致命的Python错误:Py_Initialize:无法获取本地编码 Unicode编码错误:'filesystemencoding'编解码器无法编码字符'\uda18'在位置29:无效的宽字符 IOT/中止陷阱(核心转储)

/home/hei/bin>export LANG=en_US.utf-8 && export PYTHONHOME=. && ./python3 ==================字符集[ISO8859-1] ==================字符集[] 编码[ISO8859-1]运行_PyCodec_Lookup错误 致命的Python错误:Py_Initialize:无法获取本地编码 Unicode编码错误:'filesystemencoding'编解码器无法编码字符'\uda18'在位置2:无效的宽字符 IOT/中止陷阱(核心转储)

1 个回答

2

这可能需要一步一步地调试,因为我想不出那个替代字符是从哪里来的。

首先,在你的命令行中执行以下操作:

$ echo LANG:$LANG LC_CTYPE:$LC_CTYPE

请把这个命令的输出结果更新到你的提问中。

我建议你使用UTF-8编码(比如 en_US.UTF-8),如果还没有的话,重新运行Python试试。

还有可能是你用的Python源代码版本太旧,没有修复这个错误(实际上是那个bug)。

撰写回答