Skip to content
Go back

Emscripten 在 Windows 下的安装

Published:  at  05:06 AM Updated:  at  09:10 AM
阅读时间:2 分钟

Emscripten 在 Windows 下的安装

前言

要准备做关于 WASM 的项目了,了解到要用 Emscripten,安装遇到些问题,遂记录一下。

安装

  1. 环境

    安装首先需要:

    • Python 3.8 以上版本
    • 安装了 Git
  2. 安装 Emscripten

依次运行以下命令:

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install latest

接下来官方文档写明运行:

./emsdk activate latest

但是执行时可能会出现问题:

File "your_path\emsdk/emsdk.py", line 2359, in write_set_env_script
    open(EMSDK_SET_ENV, 'w').write(env_string)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
UnicodeEncodeError: 'gbk' codec can't encode character '\u03a2' in position 725: illegal multibyte sequence

问题本质是 Windows 默认编码是 GBK,而 emsdk.py 在生成环境设置脚本时直接用 open(..., 'w') 写入,遇到了 UTF‑8 字符(如 \u03A2 等)就会出现报错。

尝试命令 set PYTHONUTF8=1 发现不起作用。

找到 write_set_env_script 函数,通常在 emsdk/emsdk.py 约第 2359 行左右,将:

open(EMSDK_SET_ENV, 'w').write(env_string)

改为:

open(EMSDK_SET_ENV, 'w', encoding='utf-8').write(env_string)

然后重新运行:

./emsdk activate latest

发现激活成功,然后设置到环境变量:

./emsdk_env.bat

验证安装:

emcc -v

输出以下信息则安装成功:

emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 4.0.10 (b7dc6e5747465580df5984e723b9d1f10d8e804b)
clang version 21.0.0git (https:/github.com/llvm/llvm-project 8f7e57485ee73205e108d74abb5565d5c63beaca)
Target: wasm32-unknown-emscripten
Thread model: posix
InstalledDir: D:\Emscripten\emsdk\upstream\bin

更新/版本

可以通过指定特定版本来安装该版本,例如:

./emsdk install 1.38.45

更新版本(不用重新安装):

./emsdk update

删除 Emscripten 只需要删除 emsdk 文件夹即可。



评论

用户头像

预览将在此处显示...

加载评论中...
评论用户头像
che1sy 2025年6月30日

这是一个示例评论。GitHub风格的评论区已经成功集成到您的博客中!