015. 与 Meta 工程师 Nero 聊 Buck2 与 Rust 构建
欢迎听众打赏支持,您的支持是我不断创作的动力🍻 本期的嘉宾是 Meta 的工程师 Nero,他是 Buck2 的核心开发者之一。我们将讨论 Rust 在 Meta 的应用、Buck2 的设计理念和特点以及 Buck2 是如何加速 Rust 的构建。 背景补充:Buck2 是 Meta 开源的一个构建系统,可以类比 Bazel。它的设计理念是提供更快、更可靠的构建体验,同时支持大规模的代码库。Buck2 的特点包括增量构建、并行执行和可扩展性,使其适用于大型项目和复杂的构建需求。 链接 Buck2 相关链接 Discord 用户群 facebookexperimental/autocargo : Translate Buck targets to Cargo.toml facebookincubator/reindeer : Transform Rust Cargo dependencies into generated Buck build rules Tutorial: Your First Buck2 Application | Buck2 Jon Gjengset - YouTube: The streams are intended for users who are already somewhat familiar with Rust, but who want to see something larger and more involved be built. Sapling: Source control that’s user-friendly and scalable bazelbuild/starlark 是一种用于配置的语言。它是为 Bazel 构建系统设计的,但也可能对其他项目有用。Starlark 是 Python 的一种方言。与 Python 一样,它是一种动态类型语言,具有高级数据类型、具有词法作用域的一级函数和垃圾回收功能。 r2cn-dev/buck2-rust-third-party: A collection of BUCK files about rust crate David Tolnay 的 buck2-rustc-bootstrap 项目,用 buck2 实现 Rust 编译器自身的构建。 Cold build without cache: 32% faster Incremental: 1.625s vs 2.6s buck2 本身构建时间对比 Cargo build: 2min20s buck2 build: 1min26s 收听方式 国内:小宇宙、微信公众号 国外:Spotify for Podcasters、Apple Podcasts、RSS 反馈 ✉️ 发现内容错误或链接失效?欢迎提交 PR 对节目有想法或建议?欢迎来信交流:[email protected]