web-audio-api - 使用优化级别 02 和 03 编译 Wasm 模块以加载到 AudioWorlet?
问题描述
我正在尝试编译一个带有额外优化的 .wasmmodule.js,以便在 AudioWorklet 中运行。
我使用 .post.js 文件将“导出默认模块”附加到已编译的 Wasm,使用 --post-js 编译标志。这适用于 01 优化,这是工作集设计模式示例中使用的当前编译配置。
$(EMSCR) $(CFLAGS) --post-js $(POST_JS) -o $(OUTPUT) $(SRC_EM) $(SRC)
CFLAGS=--bind -O1\
-s WASM=1 \
-s BINARYEN_ASYNC_COMPILATION=0 \
-s SINGLE_FILE=1 \
-s ALLOW_MEMORY_GROWTH=1 \
-s ABORTING_MALLOC=0 \
-s TOTAL_MEMORY=128Mb
我遇到了优化标志 02 和 03 的编译问题,因为我需要使用默认导出加载 Wasm。
如果我评论 --post.js 导出,编译运行良好,优化级别为 02 或 03。但是,我们无法将 Wasm 加载到工作集中,但有以下例外:
例如“加载工作集时出错:SyntaxError: 请求的模块 '../../build/m.wasmmodule.js' 不提供名为 'default 的导出
我尝试了不同的组合,但我无法克服这一点。
如果我可以尝试任何不同的配置,有什么想法吗?
非常感谢
解决方案
我有同样的问题,我通过使用--extern-post-js
而不是修复它,它在所有其他编译器工作完成后--post-js
附加导出,包括优化。
推荐阅读
- neural-network - 通过遗传算法改变神经网络中的权重和偏差
- database - 试图读取原始数据库文件
- azure - 如何将原始推送通知从 Azure 通知中心发送到 iOS 设备?
- javascript - Firebase 函数 - 无法读取用户 ID 内的属性
- python - PySpark Pandas:Groupby 识别列并对两个不同的列求和以创建新的 2x2 表
- firebase - 如何将 Firebase 添加到 Vuepress?
- r - ggplot2:带有分类轴和重叠点的闪避点
- python - 在 django 模型中动态更改字段值的数据类型
- python - 如何在熊猫列内的日期范围之间生成随机日期?
- reactjs - 在电子中运行反应应用程序,但不在本地主机上