如何在 wasm 中更改导入模块名称“env”?

Posted

技术标签:

【中文标题】如何在 wasm 中更改导入模块名称“env”?【英文标题】:How to change import module name "env" in wasm? 【发布时间】:2019-07-25 12:51:47 【问题描述】:
    在 wasm 源代码中,当使用未定义的函数时,编译器会将此函数添加到名为“env”的模块中。 我想将名称“env”更改为另一个名称,例如“myenv”
#include <stdio.h>
extern int butt();
int main()

    butt();
    printf("123\n");


废旧文件是这样的

(import "env" "butt" (func $butt (result i32)))

如何更改我的 c 代码,使“butt”在“myenv”下。 这就是我所期望的。

(import "myenv" "butt" (func $butt (result i32)))

我正在使用 clang 编译器生成 wasm 文件。

【问题讨论】:

【参考方案1】:

目前无法更改默认值,但对于给定的符号,您可以使用import_name 属性:

https://clang.llvm.org/docs/AttributeReference.html#import-module

【讨论】:

以上是关于如何在 wasm 中更改导入模块名称“env”?的主要内容,如果未能解决你的问题,请参考以下文章

wasm-pack 代码中的 Rust 导入导致 JS 错误

如何在模块导入/配置中设置 .env 变量

在python程序编写过程中,如何解决模块名称冲突?

如何在dev env中更改角度4的localhost名称以进行ssl测试?

如何在 Android Studio 中更改项目名称

如何在本地加载 wasm 模块?