【问题标题】:charmap can't decode byte 0x8dCharmap 无法解码字节 0x8d
【发布时间】:2015-12-12 18:02:33
【问题描述】:

我正在尝试使用 Cocos 框架 (cocos2d-x 3.8.1) 从 C++ 代码创建 APK

当我进入目录并使用命令行“cocos run -p android”时,出现错误

UnicodeDecodeError: 'charmap' 编解码器无法在位置解码字节 0x8d 29180:字符映射到未定义

当调用以下行时会发生这种情况

return codecs.charmap_decode(input,self.errors,decoding_table)[0]

在文件中

“\Python\Python35-32\lib\encodings\cp1252.py”,第 23 行

知道如何解决这个问题吗?

【问题讨论】:

  • 0x8D 不是 ascii 字符。 0x8D 来自哪里?什么是decode_table?

标签: android python cocos2d-x codec


【解决方案1】:

Cocos2d 需要 Python 2.7 才能运行。由于您的 Python 版本(即 3.5v),您会收到该错误。

该命令将从您的 Python 目录中搜索 python.exe。

建议你下载2.7版本,将“Python\Python35-32”目录下的python.exe重命名为python3.exe,这样Python2.7\python.exe就可以运行了。这对我有用。

【讨论】:

  • 我更改了 Cocos 路径变量,所以运行的是 Python2.7 而不是 Python3.5。现在我收到一个错误,告诉我 ANDROID_SDK_ROOT 没有在环境中定义,无论我如何尝试将它放在路径变量中......
  • 好吧,如果你在 Windows 上,创建一个名为 ANDROID_SDK_ROOT 的全局变量,指向你 C:\Android\android-sdk。并且不要忘记重新启动您的操作系统以应用这些更改。
  • 啊,你是对的,我没有重启。现在效果更好了,但是找不到 NDK_ROOT。我将创建相应的 PATH 变量。
猜你喜欢
  • 2023-03-28
  • 2020-04-14
  • 2015-08-16
  • 2019-05-14
  • 1970-01-01
  • 2022-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多