8.5.2 构建 C++ 或执行任意操作的构建脚本
02-构建 C++ 或执行任意操作的构建脚本 — Comprehensive Rust
1分钟内可阅读完
译文 · 基于 Comprehensive Rust
8.5.2 构建 C++ 或执行任意操作的构建脚本
有些 crate 使用 cc crate 来构建并链接 C/C++ 库。其他 crate 在其构建脚本中使用 bindgen 解析 C/C++。这些行为在 Chromium 环境中无法得到支持——我们的 gn、ninja 与 LLVM 构建系统在表达构建动作之间的关系方面非常具体。
因此,你的选项是:
- 避免这些 crate
- 对该 crate 打补丁。
补丁应保存在 third_party/rust/chromium_crates_io/patches/<crate>——例如见对 cxx crate 的补丁——并且每次 gnrt 升级该 crate 时会自动应用。