14 个不稳定版本 (3 个重大更改)
0.5.6 | 2024年7月31日 |
---|---|
0.5.5 | 2024年7月16日 |
0.5.4 | 2024年6月24日 |
0.5.2 | 2024年5月16日 |
0.1.2 | 2024年2月28日 |
#499 在 WebAssembly
每月下载量 30,934
46KB
861 行
wasm-component-ld
此 crate 包含一个名为 wasm-component-ld
的二进制文件,它是用于生成 WebAssembly 组件 的两个功能的包装器
- 由 LLVM 提供的
wasm-ld
链接器驱动程序 wit_component::ComponentEncoder
类型
此二进制文件首先调用 wasm-ld
,然后运行组件化过程以生成最终组件。
安装
此存储库提供 预编译的二进制文件 wasm-component-ld
。此存储库还可以使用 cargo binstall
安装。
安装 wasi-sdk 时,此二进制文件默认打包在 sysroot 中,并且 Rust wasm32-wasip2
目标在达到第 2 级时也将包含此二进制文件。
这意味着虽然可以手动安装版本,但不需要这样做。
选项
wasm-component-ld
二进制文件适用于在编译期间用作链接器驱动程序。对于 Clang 和 Rust,wasm32-wasip2
目标将自动调用此二进制文件作为链接器。
这意味着 wasm-component-ld
将大多数参数传递给 wasm-ld
。此外,所有 wasm-ld
标志都受支持并传递给 wasm-ld
。例如,您可以像这样调用链接器:wasm-component-ld --max-memory=N ...
。
wasm-component-ld
二进制文件还有一些针对自己的自定义参数,这些参数不会传递给 wasm-ld
,可以使用 -h
或 --help
进行探索。
许可证
本项目采用Apache 2/Apache 2(带LLVM例外条款)/MIT许可证的三重许可。这样做的原因是
- Aapache 2/MIT许可证在Rust生态系统中被广泛采用。
- Aapache 2/MIT许可证被用于Rust标准库,部分代码可能被迁移到那里。
- 部分代码可能被用于编译器输出,而带LLVM例外条款的Apache 2许可证对此非常有用。
更多详情请参阅
贡献
除非您明确表示,否则您根据Apache 2/Apache 2(带LLVM例外条款)/MIT许可证提交的任何有意包含在本项目中的贡献,都应按照上述方式许可,不附加任何额外的条款或条件。
依赖
~9–19MB
~268K SLoC