Windows 安装 Emscripten 准备入门 WebAssembly home 编辑时间 2020/07/27 ![](/api/file/getImage?fileId=5f1e9a0116199b501c00ff24) <br><br> ## 前言 最近看 `WebAssembly` 火的不行,而且据说支持 `Java` 于是打算入门 但目前在ROG幻14上折腾 `Linux` 受阻,干脆暂时用 `Windows` 作为主力开发系统 `Windows` 一大麻烦就是安装各种环境不方便 本文简单记录一下,` Windows` 下安装 `Emscripten` 的过程 <br><br> ## 折腾 开始之前需要确保计算机中已安装过 `.net framework 4.5` 或更高版本的 `.NET` 环境 以及必须有 `Node` 环境和 `Git` 环境 先全局安装 `windows-build-tools` (我这一步用的是cnpm 各位可以自行判断) ```shell npm install -g windows-build-tools ``` 补充: 根据网友说法,安装 `windows-build-tools` 会更改系统文件,普通CMD下安装会有概率失败,建议**右击** `Windows开始` --- `Windows PowerShell(管理员)` 然后在这里进行安装 <br> **到这里正式开始折腾** 官网安装的说明文档 [https://emscripten.org/docs/getting_started/downloads.html#installation-instructions](https://emscripten.org/docs/getting_started/downloads.html#installation-instructions) <br> 重点就是这段(首先需要有Git环境) ```shell # 拉取最新的Github代码 git clone https://github.com/emscripten-core/emsdk.git # 进到目录 cd emsdk # 不确定有什么用 官方文档要求先pull git pull # 下载安装所需软件环境 emsdk install latest ``` <br> **到这一步就开始有问题了** 错误信息如下 ```shell Installing SDK 'sdk-releases-upstream-e7e39da9c81faecd9ecf44065cee864d76e4e34d-64bit'.. Installing tool 'node-12.18.1-64bit'.. Error: Downloading URL 'https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/node-v12.18.1-win-x64.zip': [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反 应,连接尝试失败。 Installation failed! ``` 就是字面意思,谷歌apis连不上,当然是连不上了,那这里解决方案我百度了一下 官方在 `emsdk.py` 中写的是,先到当前目录找,找不到再去远程下载,所以这里解决方案就是**自己去下载一个放到安装目录下** 至于如何下载?那就各凭本事了,我的方法就是用chrome的igg谷歌助手,让chrome允许直连谷歌,然后把无法连接的谷歌apis地址贴到chrome浏览器地址栏里就下载成功了 <br> 简单留几个url地址,建议自己摸索 **iGG谷歌访问助手** [https://chrome.zzzmh.cn/info?token=ncldcbhpeplkfijdhnoepdgdnmjkckij](https://chrome.zzzmh.cn/info?token=ncldcbhpeplkfijdhnoepdgdnmjkckij) **Chrome插件安装方法** [https://chrome.zzzmh.cn/help?token=setup](https://chrome.zzzmh.cn/help?token=setup) 不建议直接照搬我的4个文件,估计根据版本的不通每个人遇到的都不一样的,我这里遇到的让我下载的一共有这些环境,都是这个方法解决,遇到一个,复制一次url到chrome浏览器下载,然后复制文件到 `emsdk` 根目录,再次执行 `emsdk install latest` ```shell https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/node-v12.18.1-win-x64.zip https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/python-3.7.4-embed-amd64+pywin32.zip https://storage.googleapis.com/webassembly/emscripten-releases-builds/deps/portable_jre_8_update_152_64bit.zip https://storage.googleapis.com/webassembly/emscripten-releases-builds/win/e7e39da9c81faecd9ecf44065cee864d76e4e34d/wasm-binaries.zip ``` <br> 最后看到一堆 `Done` 就说明这一步好了 ```shell Done installing tool 'releases-upstream-e7e39da9c81faecd9ecf44065cee864d76e4e34d-64bit'. Running post-install step: npm ci ... Done running: npm ci Done installing SDK 'sdk-releases-upstream-e7e39da9c81faecd9ecf44065cee864d76e4e34d-64bit'. ``` <br> 最后2步没什么花头,激活和部署环境变量 ```shell # 激活和部署环境变量 emsdk activate latest emsdk_env.bat ``` <br> 最后可以试下效果 ```shell emcc -v ``` 正确的返回值是 ```shell emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 1.39.20 clang version 12.0.0 (Cswircachegitchromium.googlesource.com-external-github.com-llvm-llvm--project 55fa315b0352b63454206600d6803fafacb42d5e) Target: x86_64-pc-windows-msvc Thread model: posix InstalledDir: C:/Users/Administrator/Documents/git/emsdk/upstream/bin shared:INFO: (Emscripten: Running sanity checks) ``` **至此大功告成** <br><br> ## END `Emscripten` 的安装就折腾到这里 后续有花时间折腾 `WebAssembly` 在JS中的入门 届时再继续写 `WebAssembly` 的折腾笔记 送人玫瑰,手留余香 赞赏 Wechat Pay Alipay 入门前端 Vue Cli3 + View UI 4 微信小程序首次请求慢 Safari浏览器访问慢 pending 10秒 可能是HTTPS证书的锅