使用自定义 Rust 工具链构建 Fuchsia

本指南介绍了如何使用自定义 Rust 编译器构建 Fuchsia。这是 如果您需要使用补丁编译器构建 Fuchsia, 以及自定义选项

使用其他版本的 Rust

如果您只需使用与当前所用版本不同的版本 本文档的大部分内容都不需要。Fuchsia 构建器在之后构建 Rust 对 Rust 主分支进行的每项更改。

  1. 找到您要使用的提交哈希值。
  2. 从 Fuchsia 目录运行以下命令:

    # Replace COMMIT with the full Rust commit hash.
    # This command updates the manifests in the integration repo, which you can
    # then commit or revert as necessary.
    fx roll-compiler --package rust git_revision:COMMIT
    # Fetch the package versions you specified and install them in `prebuilt/`.
    jiri fetch-packages -local-manifest
    
  3. 运行以下命令以构建 Fuchsia:

    fx build
    

    Fuchsia 构建现在使用更新后的编译器。

前提条件

在使用自定义 Rust 工具链构建 Fuchsia 之前,您需要执行以下操作:

  1. 构建自定义 Rust 工具链 代表 Fuchsia。

  2. 完成以下指南以下载 Fuchsia 源代码: 获取 Fuchsia 源代码。 如需确认 jiri 是否在您的 PATH 中,请运行 jiri -help

使用自定义 Rust 工具链构建 Fuchsia

  1. 切换到您的 Fuchsia 目录。

  2. 运行以下命令以使用新构建的工具链:

    DEV_ROOT=DEV_ROOT
    fx set core.x64 \
      --args=rustc_prefix="\"$DEV_ROOT/rust/install/fuchsia-rust\"" \
      --args=rustc_version_string='"1"'
    # plus other settings such as:
    #   --with //bundles/kitchen_sink
    #   --variant=coverage-rust  # to enable coverage profiling of fuchsia binaries
    #   --variant=host_coverage-rust  # to enable coverage profiling of host binaries
    
  3. 运行以下命令以重新构建 Fuchsia:

    fx build