12 个版本
0.1.11 | 2024 年 6 月 5 日 |
---|---|
0.1.10 | 2024 年 4 月 15 日 |
0.1.5 | 2024 年 2 月 10 日 |
0.1.4 | 2024 年 1 月 16 日 |
0.0.0 |
|
109 在 FFI 中
57 每月下载量
在 14 个 Crates 中使用(通过 playdate-sys)
83KB
2K SLoC
Playdate 绑定生成器
用于生成 Playdate 绑定,并具有如通过官方 C 参考直接生成代码文档等附加代码生成功能。
要求
- Rust nightly 工具链
- Playdate SDK
- 确保环境变量
PLAYDATE_SDK_PATH
指向 SDK 根目录
- 确保环境变量
- 遵循 官方文档
- 确保
arm-none-eabi-gcc
或gcc-arm-none-eabi
在你的PATH
中
- 确保
- 继承自 bindgen 的要求,遵循 官方文档。
配置
继承自 bindgen 的配置:遵循 bindgen 官方文档。
环境变量 PLAYDATE_SDK_PATH
,如 playdate 官方文档 中所述。
可选环境变量 ARM_GCC_PATH
以帮助找到完整的工具链中的 arm-none-eabi-gcc
(或 gcc-arm-none-eabi
)。仅在故障排除时有用。
用法
Cargo.toml
[build-dependencies.bindgen]
package = "playdate-bindgen"
version = "*"
将此添加到 build-dependencies
并将以下内容添加到你的构建脚本中
let cfg = bindgen::cfg::Config::default();
let generator = bindgen::Generator::new(cfg).expect("Couldn't create bindings generator.");
let out_path = bindgen::env_var("OUT_DIR").map(PathBuf::from)
.map(|p| p.join(&generator.filename.to_string()))
.unwrap();
let bindings = generator.generate().expect("Couldn't generate bindings.");
bindings.write_to_file(&out_path).expect("Couldn't write bindings.");
对于复杂示例,请参阅 playdate-sys crate 中的构建脚本。
此软件未由 Panic 赞助或支持。
依赖
~7–18MB
~250K SLoC