最近工作的项目中,有部分的逻辑和native端是一致的,所以希望能够复用native端的C++代码,这样既减少了开发的工作量,在后面的更新中,只要C++代码更新了,前端只需要重新编译更新一下wasm就可以了。
搭建环境
下载emsdk
我这里选择从wasm的官方github获取代码:
git clone git@github.com:emscripten-core/emsdk.git
emsdk的官方github是: https://github.com/emscripten-core/emsdk 不过我从MDN找到的资料中,使用的是 https://github.com/juj/emscripten 但是这个项目又是fork了emsdk的官方仓库,所以选择官方的仓库应该更考靠谱一点。
安装python
这里需要python 2.7版本,附上官网下载地址,按需下载。
安装成功后,可以通过命令行测试python是否安装成功
python -v
如果能在命令行中输出python相关的版本,则表示安装成功了,如果没有,则需要自己在环境变量中配置一下python的路径。
安装emsdk
在确认以上两步都成功后,进入到emsdk的目录,然后安装最新版本的emsdk
cd emsdk
emsdk install --global latest
激活
通过以下命令激活emsdk
emsdk activate latest
验证
在命令中输入以下命令
emsdk -v
如果能看到如下图的信息,则表示emsdk安装成功了
如果没有输出,则表示没有安装成功。
● 注意
安装成功后,只是在这个cmd中有效,如果关闭cmd后,再次打开需要先进入emsdk所在的文件夹,执行激活命令,才能在这个新的cmd中使用emsdk。
常见问题
- emsdk下载成功,但是输入命令没有反应。
可以尝试输入一下命令:
emsdk help
如果没有报错,也没有内容输出,如下图所示:
应该是没有安装python,或者python环境没有设置对。