收藏
回答

iOS WebAssembly 出现 CompileError: invalid wasm file

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug WXWebAssembly 微信iOS客户端 8.0.55 3.7.6

使用 rustwasm 编写简单的 wasm 代码:测量数组长度

use wasm_bindgen::prelude::*;

#[wasm_bindgen]
pub fn length(input: &[u8]) -> usize {
    input.len()
}

wasm-bindgen 版本为 0.2.100

Android, Windows, macOS 客户端表现均正常, iOS 客户端在 WXWebAssembly.instantiate 处报错

{message: "CompileError: invalid wasm file", line: 1, column: 277, stack: "@[native code]↵@↵L@https://lib/WAServiceMainContext.js:1:334105↵@↵MQe@https://lib/WAServiceMainContext.js:1:2205032↵@https://usr//appservice.app.js:57:44↵h@https://lib/WAServiceMainContext.js:1:41859↵_callee$@https://usr//appservice.app.js:69:30↵@https://usr//appservice.app.js:6:2617↵h@https://lib/WAServiceMainContext.js:1:41859↵s@https://usr//appservice.app.js:6:2862↵@https://usr//appservice.app.js:6:8228↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp12@https://usr//appservice.app.js:6:8660↵@https://usr//appservice.app.js:6:4396↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:6:4458↵@https://usr//appservice.app.js:3:466↵h@https://lib/WAServiceMainContext.js:1:41859↵asyncGeneratorStep@https://usr//appservice.app.js:3:757↵@https://usr//appservice.app.js:3:1470↵h@https://lib/WAServiceMainContext.js:1:41859↵c@https://usr//appservice.app.js:3:1527↵@https://usr//appservice.app.js:3:1763↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:3:1802↵j@https://lib/WASubContext.js:1:59069↵@https://usr//appservice.app.js:3:1152↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp3@https://usr//appservice.app.js:3:1863↵@https://usr//appservice.app.js:71:20↵h@https://lib/WAServiceMainContext.js:1:41859↵_wbg_load@https://usr//appservice.app.js:72:22↵@https://usr//appservice.app.js:47:20↵h@https://lib/WAServiceMainContext.js:1:41859↵__wbg_load@https://usr//appservice.app.js:48:22↵@https://usr//appservice.app.js:112:29↵h@https://lib/WAServiceMainContext.js:1:41859↵_callee2$@https://usr//appservice.app.js:122:31↵@https://usr//appservice.app.js:6:2617↵h@https://lib/WAServiceMainContext.js:1:41859↵s@https://usr//appservice.app.js:6:2862↵@https://usr//appservice.app.js:6:8228↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp12@https://usr//appservice.app.js:6:8660↵@https://usr//appservice.app.js:6:4396↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:6:4458↵@https://usr//appservice.app.js:3:466↵h@https://lib/WAServiceMainContext.js:1:41859↵asyncGeneratorStep@https://usr//appservice.app.js:3:757↵@https://usr//appservice.app.js:3:1470↵h@https://lib/WAServiceMainContext.js:1:41859↵c@https://usr//appservice.app.js:3:1527↵@https://usr//appservice.app.js:3:1763↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:3:1802↵j@https://lib/WASubContext.js:1:59069↵@https://usr//appservice.app.js:3:1152↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp3@https://usr//appservice.app.js:3:1863↵@https://usr//appservice.app.js:124:20↵h@https://lib/WAServiceMainContext.js:1:41859↵_wbg_init@https://usr//appservice.app.js:125:23↵@https://usr//appservice.app.js:96:20↵h@https://lib/WAServiceMainContext.js:1:41859↵__wbg_init@https://usr//appservice.app.js:97:23↵@https://usr//pages/index/index.appservice.js:18:67↵h@https://lib/WAServiceMainContext.js:1:41859↵_callee$@https://usr//pages/index/index.appservice.js:28:32↵@https://usr//appservice.app.js:6:2617↵h@https://lib/WAServiceMainContext.js:1:41859↵s@https://usr//appservice.app.js:6:2862↵@https://usr//appservice.app.js:6:8228↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp12@https://usr//appservice.app.js:6:8660↵@https://usr//appservice.app.js:6:4396↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:6:4458↵@https://usr//appservice.app.js:3:466↵h@https://lib/WAServiceMainContext.js:1:41859↵asyncGeneratorStep@https://usr//appservice.app.js:3:757↵@https://usr//appservice.app.js:3:1470↵h@https://lib/WAServiceMainContext.js:1:41859↵c@https://usr//appservice.app.js:3:1527↵@https://usr//appservice.app.js:3:1763↵h@https://lib/WAServiceMainContext.js:1:41859↵@https://usr//appservice.app.js:3:1802↵j@https://lib/WASubContext.js:1:59069↵@https://usr//appservice.app.js:3:1152↵h@https://lib/WAServiceMainContext.js:1:41859↵_tmp3@https://usr//appservice.app.js:3:1863↵@https://usr//pages/index/index.appservice.js:29:56↵h@https://lib/WAServiceMainContext.js:1:41859↵onLoad@https://usr//pages/index/index.appservice.js:30:24↵@https://lib/WASubContext.js:1:452622↵@https://lib/WASubContext.js:1:452415↵@https://lib/WASubContext.js:1:464587↵@https://lib/WASubContext.js:1:424215↵@https://lib/WASubContext.js:1:465128"}


请帮忙看看,谢谢~

回答关注问题邀请回答
收藏

2 个回答

  • 菩提树下一粒沙
    菩提树下一粒沙
    03-17

    我也遇到这个问题

    03-17
    有用
    回复
  • 雨径
    雨径
    02-11
    我用这个版本成功了
    
    rustc 1.71.1 (eb26296b5 2023-08-03)
    wasm-pack 0.10.1
    
    02-11
    有用
    回复 1
    • 菩提树下一粒沙
      菩提树下一粒沙
      03-18
      你的编译环境是什么window 还是mac
      我切换到你的版本 好像也是一样的错误
      03-18
      回复
登录 后发表内容