您尚未登录。

楼主 # 2025-10-09 11:20:12

colin_lam
会员
注册时间: 2025-10-09
已发帖子: 1
积分: 16

LookupError: unknown encoding: cp65001 (luban-lite win_env.bat问题修复)

LookupError: unknown encoding: cp65001 (luban-lite win_env.bat问题修复)

问题描述

在 Git Bash (MINGW64) 环境下运行 win_env.bat 并使用 scons 编译时,出现:

LookupError: unknown encoding: cp65001

这是因为 Python 2.7 不支持 cp65001(Windows UTF-8 编码)。

复现环境

  • 系统:Windows 10 x64

  • 终端:Git Bash (MINGW64)

  • 工具链:Luban-Lite 自带 Python 2.7

  • 编译器调用方式:win_env.batscons

修复方法

  1. 打开:
    ```
    tools\env\tools\Python27\Lib\encodings\aliases.py
    ```

  2. 在文件末尾或合适位置添加:
    ```python
    'cp65001': 'utf_8', # by Colin
    ```

原理说明

  • cp65001 是 Windows UTF-8 代码页的名称。

  • Python 2.7 标准库中缺少该编码映射,导致读取/写入输出流时失败。

  • 添加映射后,Python 能将 cp65001 正确解析为 utf_8

注意事项

  • 修改后无需每次 chcp 936 切换编码。

  • 此修改是永久性的,对 Luban-Lite 自带 Python 环境全局生效。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn


东莞哇酷科技有限公司开发