规矩

按照国际惯例,需要先贴官网地址、Git地址。
gayhub: https://github.com/kripken/emscripten
wiki: https://github.com/kripken/emscripten/wiki
官网: http://emscripten.org

mac系统下安装

讲道理,没啥好写的

  • 官方网站正上方Downloads选择 Linux and MacOSX 下载并解压

  • 升级
    ./emsdk update

  • 下载安装最新SDK工具
    ./emsdk install latest

  • 激活最新安装工具
    ./emsdk activate latest

  • 添加环境变量
    source ./emsdk_env.sh

  • 查看安装的工具
    ./emsdk list
    这里可以查看到最新的安装工具列表。同理在上述安装步骤中,发现我们用的都是latest也就是最新版本。协同开发的过程中可能会涉及到版本统一的问题。可以使用
    ./emsdk install < list命令中查找到的工具及版本号 >
    ./emsdk activate < list命令中查找到的工具及版本号 >
    对相应的版本进行安装和激活。

Linux系统下安装

  • 一般情况
    基本安装是和上述安装相同的。安装过后也同样是可以使用
    emcc
    emmake
    进行操作(下一次说)

  • 缺少运行库
    由于手贱用CentOS 6 试了一下。然后就开始报各种缺少运行库的错误。所以也在这里说明一下
    首先是一个比较简便的方法 安装 sdk-incoming模块 分为64 和 32位

然后。问题就来了 会发现缺少cmake 自然 就是安装cmake
如果安装不成功 报错。并且报的是版本不够。可能是C11没有安装。安装C++11
这里不做说明 因为网上都能查到。各种博客。不喜欢搬运。

另一种方法是 挨个安装运行库
方法同理

  • python报错
    最常见的的就是 AttributeError: ‘tuple’ object has no attribute ‘major’

原因:python 版本低,导致sys组件获取到的 version_info 格式 和预期并不相同。以1.37.1为例。做以下python修改

emsdk-portable/emscripten/1.37.1/emcc 中

if sys.version_info.major == 2:前加入以下代码

1
2
3
4
if type(sys.version_info) == 'tuple':
major = sys.version_info.major
else:
major = sys.version_info[0]

并把 sys.version_info.major == 2 改为 major == 2

注意 python编写请使用游标卡尺,不要直接复制代码

如果输入 emcc提示了 没有input 那么就代表OK了。下面可以emcc 和 emmake工具进行 C/C++ 到 wasm/js的编写工作了。

PS:如果有啥问题。这篇文章会在知乎和B站专栏发一下的。两遍留言都OK。

Windows系统下安装

下载exe文件。点击下一步。( ̄rǒ ̄)

下期预告:emscripten 使用。有时间就写 没时间就放着