0

我是 wasm 技术的新手,我正在尝试使用 Python 的 WebAssembly 运行时https://github.com/wasmerio/wasmer-python来读取 https://github.com/docknetwork/crypto-wasm 的 wasm文件

问题是 wasmer-python 中可用的所有示例都读取了一个包含一个模块的 wasm 文件。在 crypto-wasm 中,我们有几个模块,我怀疑这是以下代码中的问题。我不确定 wasmer-python 是否支持这个 wasm 的孩子。

这是python代码:

from wasmer import engine, Store, Module, Instance
from wasmer_compiler_cranelift import Compiler

engine = engine.Universal(Compiler)

# Let's define the store, that holds the engine, that holds the compiler.
store = Store(engine)

# Let's compile the module to be able to execute it!
module = Module(store, open('wasm.wasm', 'rb').read())

# Now the module is compiled, we can instantiate it.
instance = Instance(module)

然后wasm.wasmfile 是运行yard buildrepo 命令时生成的文件 .https://github.com/docknetwork/crypto-wasm。

然后我收到以下错误:

zak@ubuntu:~/accumulator/python-server$ python3 main.py 
Traceback (most recent call last):
  File "main.py", line 13, in <module>
    instance = Instance(module)
RuntimeError: Error while importing "__wbindgen_placeholder__"."__wbindgen_object_drop_ref": unknown import. Expected Function(FunctionType { params: [I32], results: [] })

任何人都知道可能是这个问题的根本原因吗?我在哪里可以找到有关如何阅读多模块 wasm 的示例?非常感谢任何输入。

非常感谢,扎克

4

0 回答 0