22 个版本 (12 个重大更新)
0.14.0 | 2024年6月3日 |
---|---|
0.13.2 | 2023年11月15日 |
0.10.1 | 2023年7月25日 |
0.7.1 | 2022年11月25日 |
0.1.0 | 2022年5月27日 |
#49 在 WebAssembly
2,801 每月下载
用于 6 个包
715KB
15K SLoC
WasmEdge Rust SDK
WasmEdge Rust SDK 为 WasmEdge 提供了符合 Rust 语言的绑定
注意: 此项目仍在积极开发中,无法保证 API 稳定。
开始使用
此包依赖于 WasmEdge C API。在 Linux/macOS 中,可以通过启用 standalone
功能在构建时下载 API。否则,需要先在系统中安装 API。请参阅 安装和卸载 WasmEdge 以安装 WasmEdge 库。下表显示了 wasmedge-sdk
包的每个版本所需的 WasmEdge 库版本。
wasmedge-sdk | WasmEdge 库 | wasmedge-sys | wasmedge-types | wasmedge-macro | async-wasi |
---|---|---|---|---|---|
0.13.5-newapi | 0.13.5 | 0.18.0 | 0.5.0 | 0.6.1 | 0.2.0 |
0.13.2 | 0.13.5 | 0.17.5 | 0.4.4 | 0.6.1 | 0.1.0 |
0.13.1 | 0.13.5 | 0.17.4 | 0.4.4 | 0.6.1 | 0.1.0 |
0.13.0 | 0.13.5 | 0.17.3 | 0.4.4 | 0.6.1 | 0.1.0 |
0.12.2 | 0.13.4 | 0.17.2 | 0.4.4 | 0.6.1 | 0.1.0 |
0.12.1 | 0.13.4 | 0.17.1 | 0.4.4 | 0.6.1 | 0.1.0 |
0.12.0 | 0.13.4 | 0.17.0 | 0.4.4 | 0.6.1 | 0.1.0 |
0.11.2 | 0.13.3 | 0.16.2 | 0.4.3 | 0.6.1 | 0.1.0 |
0.11.0 | 0.13.3 | 0.16.0 | 0.4.3 | 0.6.0 | 0.0.3 |
0.10.1 | 0.13.3 | 0.15.1 | 0.4.2 | 0.5.0 | 0.0.2 |
0.10.0 | 0.13.2 | 0.15.0 | 0.4.2 | 0.5.0 | 0.0.2 |
0.9.0 | 0.13.1 | 0.14.0 | 0.4.2 | 0.4.0 | 0.0.1 |
0.9.0 | 0.13.0 | 0.14.0 | 0.4.2 | 0.4.0 | 0.0.1 |
0.8.1 | 0.12.1 | 0.13.1 | 0.4.1 | 0.3.0 | - |
0.8.0 | 0.12.0 | 0.13.0 | 0.4.1 | 0.3.0 | - |
0.7.1 | 0.11.2 | 0.12.2 | 0.3.1 | 0.3.0 | - |
0.7.0 | 0.11.2 | 0.12 | 0.3.1 | 0.3.0 | - |
0.6.0 | 0.11.2 | 0.11 | 0.3.0 | 0.2.0 | - |
0.5.0 | 0.11.1 | 0.10 | 0.3.0 | 0.1.0 | - |
0.4.0 | 0.11.0 | 0.9 | 0.2.1 | - | - |
0.3.0 | 0.10.1 | 0.8 | 0.2 | - | - |
0.1.0 | 0.10.0 | 0.7 | 0.1 | - | - |
WasmEdge Rust SDK 将会自动在您的系统中搜索 WasmEdge 库。或者,您可以将环境变量 WASMEDGE_DIR
设置为 WasmEdge 库的路径(或使用 WASMEDGE_INCLUDE_DIR
和 WASMEDGE_LIB_DIR
变量进行更精细的控制)。如果您想使用本地的 cmake
构建版本的 WasmEdge,则可以设置 WASMEDGE_BUILD_DIR
。
WasmEdge Rust SDK 将按照以下顺序在以下路径中搜索 WasmEdge 库
$WASMEDGE_[INCLUDE|LIB]_DIR
$WASMEDGE_DIR
$WASMEDGE_BUILD_DIR
$HOME/.wasmedge
/usr/local
$HOME/.local
当启用 standalone
功能时,在构建过程中将下载正确的库,并忽略之前的位置。您可以使用环境变量 WASMEDGE_STANDALONE_PROXY
、WASMEDGE_STANDALONE_PROXY_USER
和 WASMEDGE_STANDALONE_PROXY_PASS
来指定下载过程中的代理。您可以将环境变量 WASMEDGE_STANDALONE_ARCHIVE
设置为使用本地存档而不是下载。
以下架构支持自动下载
操作系统 | libc | 架构 | 链接类型 |
---|---|---|---|
macos | - | x86_64 、aarch64 |
动态 |
linux | glibc |
x86_64 、aarch64 |
静态、动态 |
linux | musl |
x86_64 、aarch64 |
静态 |
此crate在构建过程中使用 rust-bindgen
。如果您想使用外部的 rust-bindgen
,可以将环境变量 WASMEDGE_RUST_BINDGEN_PATH
设置为 bindgen
可执行文件的路径。这在像 Alpine Linux 这样的系统中特别有用(参见 rust-lang/rust-bindgen#2360,rust-lang/rust-bindgen#2333)。
注意:支持的最小Rust版本是1.71。
API参考
示例
WasmEdge RustSDK的示例仓库包含许多示例,展示了如何使用WasmEdge Rust SDK。
贡献
请阅读有关如何贡献代码的贡献指南。
许可证
本项目采用Apache 2.0许可证许可。
依赖关系
~5-18MB
~264K SLoC