使用 Rust 1.62.1 Toolset


Red Hat Developer Tools 1

安装和使用 Rust 1.62.1 Toolset

摘要

Rust Toolset 是 Red Hat Enterprise Linux (RHEL)操作系统上的开发人员。使用本指南了解 Rust Toolset,了解如何调用和使用不同版本的 Rust 工具,并使用更深入的信息查找资源。

使开源包含更多

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。详情请查看 CTO Chris Wright 的信息

第 1 章 Rust Toolset

Rust Toolset 是 Red Hat Enterprise Linux (RHEL)上的开发人员。它为 Rust 编程语言、Rust 软件包管理器 Cargo、Rust 格式工具和所需的库提供 Rust c 编译器。

Rust Toolset 作为 Red Hat Enterprise Linux 7 的 Red Hat Developer Tools 的一部分发布。对于 Red Hat Enterprise Linux 8,Rust Toolset 作为一个模块提供。Rust Toolset 作为 Red Hat Enterprise Linux 9 的软件包提供。

1.1. Rust Toolset 组件

以下组件作为 Rust Toolset 的一部分提供:

Expand
名称版本描述

rust

1.62.1

LLVM 的 Rust 编译器前端。

cargo

1.62.1

Rust 的构建系统和依赖项管理器。

rustfmt

1.62.1

用于自动格式化 Rust 代码的工具。

1.2. Rust Toolset 兼容性

Rust Toolset 可用于 Red Hat Enterprise Linux 7 和 Red Hat Enterprise Linux 8 和 Red Hat Enterprise Linux 9,在以下构架中:

  • AMD 和 Intel 64 位
  • 64 位 ARM (RHEL 8 和 RHEL 9)
  • IBM Power Systems, Little Endian
  • IBM Power Systems,big Endian (仅 RHEL 7)
  • 64-bit IBM Z

1.3. 访问 Red Hat Enterprise Linux 7 上的 Rust Toolset

要在 Red Hat Enterprise Linux 7 上安装 Rust Toolset,您必须访问并启用 Red Hat Developer Tools 和 Red Hat Software Collections 软件仓库。
如果这些软件仓库已附加到您的系统,请参阅安装 Rust Toolset

流程

  1. 运行以下命令安装 Wget

    # yum install wget
    Copy to Clipboard Toggle word wrap
  2. 运行以下命令下载最新的订阅数据:

    # subscription-manager refresh
    Copy to Clipboard Toggle word wrap
  3. 运行以下命令注册您的系统:

    # subscription-manager register
    Copy to Clipboard Toggle word wrap

    要使用图形用户界面(GUI) 注册您的系统,请按照注册和取消注册系统 指南进行操作。

  4. 运行以下命令,显示所有可用订阅列表并标识池 ID:

    # subscription-manager list --available
    Copy to Clipboard Toggle word wrap
  5. 在以池 ID 开头的行中查找 池 ID
  6. 运行以下命令,附加可让您访问 Red Hat Developer Tools 仓库的订阅:

    # subscription-manager attach --pool=<pool ID from the subscription>
    Copy to Clipboard Toggle word wrap
    • 将 subscription &gt; 中的 & lt; 池 ID 替换为您在上一步中确定的池 ID。
  7. 运行以下命令验证将哪些订阅附加到您的系统中:

    # sudo subscription-manager list --consumed
    Copy to Clipboard Toggle word wrap
  8. 运行以下命令,启用 rhel-7-variant-devtools-rpms 存储库:

    # subscription-manager repos --enable rhel-7-<variant>-devtools-rpms
    Copy to Clipboard Toggle word wrap
    • <variant > 替换为您的 Red Hat Enterprise Linux 系统变体: serverworkstation

      使用 服务器 访问最广泛的开发工具。

  9. 运行以下命令,启用 rhel-变体- rhscl-7-rpms 存储库:

    # subscription-manager repos --enable rhel-<variant>-rhscl-7-rpms
    Copy to Clipboard Toggle word wrap
    • <variant > 替换为您的 Red Hat Enterprise Linux 系统变体: serverworkstation
  10. 运行以下命令,将 Red Hat Developer Tools GPG 密钥添加到您的系统中:

    # cd /etc/pki/rpm-gpg
    # wget -O RPM-GPG-KEY-redhat-devel https://www.redhat.com/security/data/a5787476.txt
    # rpm --import RPM-GPG-KEY-redhat-devel
    Copy to Clipboard Toggle word wrap

1.4. 安装 Rust Toolset

完成以下步骤以安装 Rust Toolset,包括所有开发和调试工具以及依赖软件包。请注意,Rust Toolset 依赖于 LLVM Toolset。

先决条件

流程

在 Red Hat Enterprise Linux 7 上,运行以下命令来安装 Rust-toolset-1.62 集合:

# yum install rust-toolset-1.62
Copy to Clipboard Toggle word wrap

在 Red Hat Enterprise Linux 8 中,运行以下命令来安装 Rust-toolset 模块:

# yum module install rust-toolset
Copy to Clipboard Toggle word wrap

在 Red Hat Enterprise Linux 9 中,运行以下命令来安装 Rust-toolset 软件包:

# dnf install rust-toolset
Copy to Clipboard Toggle word wrap

1.5. 安装 Rust 文档

Rust 编程语言书 可作为可安装的文档提供。

先决条件

流程

要安装 Rust-doc 软件包,请运行以下命令:

  • 在 Red Hat Enterprise Linux 7 上:

    # yum install rust-toolset-1.62-rust-doc
    Copy to Clipboard Toggle word wrap

    您可以在以下路径中找到 Rust 编程语言 书: /opt/rh/rust-toolset-1.62/root/usr/share/doc/rust/html/index.html
    您可以在以下路径中找到所有 Rust 代码软件包的 API 文档: /opt/rh/rust-toolset-1.62/root/usr/share/doc/rust/html/std/index.html

  • 在 Red Hat Enterprise Linux 8 中:

    # yum install rust-doc
    Copy to Clipboard Toggle word wrap

    您可以在以下路径下找到 Rust 编程语言 书: /usr/share/doc/rust/html/index.html
    您可以在以下路径中找到所有 Rust 代码软件包的 API 文档: /usr/share/doc/rust/html/std/index.html

  • 在 Red Hat Enterprise Linux 9 中:

    # dnf install rust-doc
    Copy to Clipboard Toggle word wrap

    您可以在以下路径下找到 Rust 编程语言 书: /usr/share/doc/rust/html/index.html
    您可以在以下路径中找到所有 Rust 代码软件包的 API 文档: /usr/share/doc/rust/html/std/index.html

1.6. 安装 Cargo 文档

Cargo 是 Rust 的软件包管理器 书,可作为 Cargo 的可安装文档。

先决条件

流程

  • 要安装 cargo-doc 软件包,请运行:

    • 在 Red Hat Enterprise Linux 7 上:

      # yum install rust-toolset-1.62-cargo-doc
      Copy to Clipboard Toggle word wrap

      您可以在以下路径中找到 Cargo 书/opt/rh/rust-toolset-1.62/root/usr/share/doc/cargo/html/index.html

    • 在 Red Hat Enterprise Linux 8 中:

      # yum install cargo-doc
      Copy to Clipboard Toggle word wrap

      您可以在以下路径中找到 Cargo, Rust 的 Package Manager 书: /usr/share/doc/cargo/html/index.html

    • 在 Red Hat Enterprise Linux 9 中:

      # dnf install cargo-doc
      Copy to Clipboard Toggle word wrap

      您可以在以下路径中找到 Cargo, Rust 的 Package Manager 书: /usr/share/doc/cargo/html/index.html

第 2 章 Cargo 构建工具

cargo 是 Rust 编译器 Rust c 以及软件包和依赖项 管理器的构建工具和前端。它允许 Rust 项目使用特定版本要求声明依赖项,从而解决完整的依赖项图、下载软件包和构建以及测试整个项目。

Rust Toolset 带有 Cargo 1.62.1。

2.1. Cargo 目录结构和文件放置

Cargo 构建工具使用 set convention 来定义 Cargo 软件包中的目录结构和文件放置。运行 cargo new 命令会为清单和项目文件生成软件包目录结构和模板。默认情况下,它还在软件包根目录中初始化一个新的 Git 存储库。

对于二进制程序,Cargo 创建一个目录 project_name,其中包含一个名为 Cargo.toml 的文本文件,以及包含名为 main.rs 的文本文件的子目录。

2.2. 创建 Rust 项目

根据 Cargo 约定设置的新 Rust 项目。有关 Cargo 约定的更多信息,请参阅 Cargo 目录结构和文件放置

流程

运行以下命令来创建 Rust 项目:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'cargo new --bin <project_name>'
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为您的项目名称。
  • 在 Red Hat Enterprise Linux 8 中:

    $ cargo new --bin <project_name>
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为您的项目名称。
  • 在 Red Hat Enterprise Linux 9 中:

    $ cargo new --bin <project_name>
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为您的项目名称。
注意

要编辑项目代码,请编辑主可执行文件 main.rs,并将新源文件添加到 src 子目录。

其他资源

2.3. 为 Rust 项目创建库

完成以下步骤,使用 Cargo 构建工具为您的 Rust 项目创建库。

先决条件

流程

要为 Rust 项目创建库,请运行以下命令:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'cargo new --lib <project_name>'
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为 Rust 项目的名称。
  • 在 Red Hat Enterprise Linux 8 中:

    $ cargo new --lib <project_name>
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为 Rust 项目的名称。
  • 在 Red Hat Enterprise Linux 9 中:

    $ cargo new --lib <project_name>
    Copy to Clipboard Toggle word wrap
    • <project_name > 替换为 Rust 项目的名称。

2.4. 构建 Rust 项目

使用 Cargo 构建工具构建您的 Rust 项目。cargo 解析项目的所有依赖项,下载缺少的依赖项,并使用 Rust c 编译器编译它。

默认情况下,项目以 debug 模式构建和编译。有关以发行模式编译项目的详情,请参考 以发行模式构建 Rust 项目

先决条件

流程

  • 要构建由 Cargo 管理的 Rust 项目,请在项目目录中运行:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo build'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo build
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo build
      Copy to Clipboard Toggle word wrap
  • 要验证 Rust 程序是否可在不需要构建可执行文件时构建,请运行:
$ cargo check
Copy to Clipboard Toggle word wrap

2.5. 以发行版本模式构建 Rust 项目

使用 Cargo 构建工具以 release 模式构建 Rust 项目。发行模式是优化您的源代码,因此可以提高编译时间,同时确保编译的二进制文件更快地运行。使用此模式生成适合发行版本和生产的优化工件。
cargo 解析项目的所有依赖项,下载缺少的依赖项,并使用 Rust c 编译器编译它。

有关以 debug 模式编译项目的详情,请参考 构建 Rust 项目

先决条件

流程

  • 要以发行版本模式构建项目,请运行:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo build --release'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo build --release
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo build --release
      Copy to Clipboard Toggle word wrap
  • 要验证 Rust 程序是否可在不需要构建可执行文件时构建,请运行:
$ cargo check
Copy to Clipboard Toggle word wrap

2.6. 运行 Rust 程序

使用 Cargo 构建工具运行 Rust 项目。cargo 首先重建项目,然后运行生成的可执行文件。如果在开发过程中使用,则 cargo run 命令可以正确地解析独立于构建模式的输出路径。

先决条件

  • 构建的 Rust 项目。
    有关如何构建 Rust 项目的详情,请参考 构建 Rust 项目

流程

要运行由 Cargo 项目管理的 Rust 程序,请在项目目录中运行:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'cargo run'
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 8 中:

    $ cargo run
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 9 中:

    $ cargo run
    Copy to Clipboard Toggle word wrap
注意

如果您的程序尚未构建,Cargo 会构建程序,然后再运行它。

2.7. 测试 Rust 项目

使用 Cargo 构建工具测试您的 Rust 程序。首先重新构建您的项目,然后运行在项目中找到的测试。请注意,您只能测试免费的 monomorphic,且无参数。功能返回类型必须是 ()Result< (),E> where E: Error

默认情况下,Rust 项目在 debug 模式中测试。有关以发行模式测试项目的详情,请参考在 发行版本模式中测试 Rust 项目

先决条件

  • 构建的 Rust 项目。
    有关如何构建 Rust 项目的详情,请参考 构建 Rust 项目

流程

  • 在功能前添加 test 属性 #[test]
  • 要运行由 Cargo 管理的 Rust 项目的测试,请在项目目录中运行:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo test'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo test
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo test
      Copy to Clipboard Toggle word wrap

2.8. 以发行版本模式测试 Rust 项目

使用 Cargo 构建工具,以发行版本模式测试您的 Rust 程序。发行模式是优化您的源代码,因此可以提高编译时间,同时确保编译的二进制文件更快地运行。使用此模式生成适合发行版本和生产的优化工件。
首先重新构建您的项目,然后运行在项目中找到的测试。请注意,您只能测试免费的 monomorphic,且无参数。功能返回类型必须是 ()Result< (),E> where E: Error

有关以调试模式测试项目的详情,请参考 测试 Rust 项目

先决条件

  • 构建的 Rust 项目。
    有关如何构建 Rust 项目的详情,请参考 构建 Rust 项目

流程

  • 在功能前添加 test 属性 #[test]
  • 要在发行版本模式中运行由 Cargo 管理的 Rust 项目的测试,请在项目目录中运行:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo test --release'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo test --release
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo test --release
      Copy to Clipboard Toggle word wrap

2.9. 配置 Rust 项目依赖项

使用 Cargo 构建工具配置 Rust 项目的依赖项。要为 Cargo 管理的项目指定依赖项,请编辑项目目录中的 Cargo.toml 文件并重新构建项目。cargo 下载 Rust 代码软件包及其依赖项,将其存储在本地,构建包括依赖项代码软件包的所有项目源代码,并运行生成的可执行文件。

先决条件

  • 构建的 Rust 项目。
    有关如何构建 Rust 项目的详情,请参考 构建 Rust 项目

流程

  1. 在项目目录中,打开文件 Cargo.toml
  2. 移到标有 [dependencies] 的部分。
    每个依赖项都列在以下格式的新行中:

    crate_name = version
    Copy to Clipboard Toggle word wrap

    Rust 代码软件包称为 crates。

  3. 编辑依赖项。
  4. 运行以下命令重建项目:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo build'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo build
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo build
      Copy to Clipboard Toggle word wrap
  5. 使用以下命令运行项目:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo run'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo run
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo run
      Copy to Clipboard Toggle word wrap

2.10. 为 Rust 项目构建文档

使用 Cargo 工具从源代码中生成标记为提取的源代码的文档。请注意,仅针对公共功能、变量和成员提取文档注释。

先决条件

流程

  • 要标记提取的注释,请使用三个斜杠 ///,并将您的注释放在文档所在行的开头。
    cargo 支持您的评论的 Markdown 语言。
  • 要使用 Cargo 构建项目文档,请在项目目录中运行:

    • 在 Red Hat Enterprise Linux 7 上:

      $ scl enable rust-toolset-1.62 'cargo doc --no-deps'
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 8 中:

      $ cargo doc --no-deps
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      $ cargo doc --no-deps
      Copy to Clipboard Toggle word wrap

生成的文档位于 .target/doc 目录中。

完成以下步骤以安装 WebAssembly 标准库。

先决条件

流程

  • 要安装 WebAssembly 标准库,请运行:

    • 在 Red Hat Enterprise Linux 8 中:

      # yum install rust-std-static-wasm32-unknown-unknown
      Copy to Clipboard Toggle word wrap
    • 在 Red Hat Enterprise Linux 9 中:

      # dnf install rust-std-static-wasm32-unknown-unknown
      Copy to Clipboard Toggle word wrap
  • 要将 WebAssembly 与 Cargo 搭配使用,请运行:

    • 在 Red Hat Enterprise Linux 8 中:

      # cargo <command> --target wasm32-unknown-unknown
      Copy to Clipboard Toggle word wrap

      将 &lt; 命令> 替换为您要运行的 Cargo 命令。

    • 在 Red Hat Enterprise Linux 9 中:

      # cargo <command> --target wasm32-unknown-unknown
      Copy to Clipboard Toggle word wrap

      将 &lt; 命令> 替换为您要运行的 Cargo 命令。

2.12. Vendoring Rust 项目依赖项

创建 Rust 项目依赖项的本地副本,以使用 Cargo 构建工具离线重新分配和重复使用。此过程称为供应商项目依赖项。厂商的依赖项,包括 Rust 代码软件包,用于在 Windows 操作系统上构建项目,位于 供应商 目录中。Cargo 可以使用厂商的依赖项,而无需连接到互联网。

先决条件

流程

要使用 Cargo 依赖项厂商您的 Rust 项目,请在项目目录中运行:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'cargo vendor'
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 8 中:

    $ cargo vendor
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 9 中:

    $ cargo vendor
    Copy to Clipboard Toggle word wrap

第 3 章 Rustfmt 格式化工具

使用 Rustfmt 格式化工具,您可以自动格式化 Rust 程序的源代码。您可以将 rusftmt 用作独立工具,也可以使用 Cargo。

3.1. 安装 Rustfmt

完成以下步骤以安装 Rustfmt 格式 工具。

先决条件

流程

运行以下命令来安装 Rust fmt

  • 在 Red Hat Enterprise Linux 7 上:

    # yum install rust-toolset-1.62-rustfmt
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 8 中:

    # yum install rustfmt
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 9 中:

    # dnf install rustfmt
    Copy to Clipboard Toggle word wrap

3.2. 使用 Rustfmt 作为独立工具

使用 Rustfmt 作为独立工具来格式化 Rust 源文件及其所有依赖项。另外,将 Rust fmt 与 Cargo 构建工具一起使用。如需更多信息,请参阅使用带有 Cargo 的 Rustfmt

先决条件

流程

要使用 Rustfmt 作为独立 工具 格式化 Rust 源文件,请运行以下命令:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'rustfmt <source-file>'
    Copy to Clipboard Toggle word wrap
    • <source_file > 替换为源文件的名称。
      另外,您可以将 &lt ;source_file&gt; 替换为标准输入。然后 Rustfmt 在标准输出中提供其输出。
  • 在 Red Hat Enterprise Linux 8 中:

    $ rustfmt <source-file>
    Copy to Clipboard Toggle word wrap
    • <source_file > 替换为源文件的名称。
      另外,您可以将 &lt ;source_file&gt; 替换为标准输入。然后 Rustfmt 在标准输出中提供其输出。
  • 在 Red Hat Enterprise Linux 9 中:

    $ rustfmt <source-file>
    Copy to Clipboard Toggle word wrap
    • <source_file > 替换为源文件的名称。
      另外,您可以将 &lt ;source_file&gt; 替换为标准输入。然后 Rustfmt 在标准输出中提供其输出。
注意

默认情况下,Rust fmt 在不显示详情或创建备份的情况下修改受影响的文件。要显示详情并创建备份,请运行带有 --write-mode 值 的 Rustfmt

3.3. 使用带有 Cargo 构建工具的 Rustfmt

使用带有 Cargo 的 Rustfmt 工具格式化 Rust 源文件及其所有依赖项。
作为替代方案,使用 Rust fmt 作为独立工具。如需更多信息,请参阅使用 Rustfmt 作为独立工具

先决条件

流程

要格式化 Cargo 代码软件包中的所有源文件,请运行以下命令:

  • 在 Red Hat Enterprise Linux 7 上:

    $ scl enable rust-toolset-1.62 'cargo fmt'
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 8 中:

    $ cargo fmt
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 9 中:

    $ cargo fmt
    Copy to Clipboard Toggle word wrap
注意

要更改 Rust fmt 格式选项,请在 项目目录中创建配置文件 Rustfmt.toml,并将您的配置添加到文件中。

在 RHEL 8 中,您可以使用 Containerfiles 在 Red Hat Universal Base Images (UBI)容器上构建自己的 Rust Toolset 容器镜像。

4.1. 在 RHEL 8 上创建 Rust Toolset 的容器镜像

在 RHEL 8 中,Rust Toolset 软件包是 Red Hat Universal Base Images (UBI)软件仓库的一部分。要让容器大小小,请只安装独立的软件包,而不是整个 Rust Toolset。

先决条件

  • 一个现有的 Containerfile。
    有关创建 Containerfiles 的更多信息,请参阅 Dockerfile 参考 页面。

流程

  • 访问 红帽容器目录
  • 选择 UBI。
  • Get this image 并按照说明进行操作。
  • 要创建包含 Rust Toolset 的容器,请在 Containerfile 中添加以下行:
FROM registry.access.redhat.com/ubi8/ubi:latest

RUN yum install -y rust-toolset
Copy to Clipboard Toggle word wrap
  • 要创建仅包含单个软件包的容器镜像,请在 Containerfile 中添加以下行:
RUN yum install <package-name>
Copy to Clipboard Toggle word wrap
  • 将 < package_name > 替换为您要安装的软件包的名称。

第 5 章 Rust 1.62.1 Toolset 中的更改

Rust Toolset 已从 RHEL 7、RHEL 8 和 RHEL 9 上的 1.58.0 版本更新至 1.62.1。

主要变更包括:

  • 解构赋值允许模式在赋值的左侧赋值现有的变量。例如,元组赋值可以交换变量:(a、b) =(b、a)
  • 现在,使用 core::arch::asm! 宏在 64 位 x86 和 64 位 ARM 上支持内联汇编。请参阅参考"/usr/share/doc/rust/html/reference/inline-assembly.html"一章中的"Inline assembly"章节(在线位于 https://doc.rust-lang.org/reference/inline-assembly.html
  • 枚举现在可以使用显式注解的 #[default] 变体派生 Default 特征。
  • MutexCondVarRwLock 现在使用基于自定义的 futex 实现,而非 pthreads,Rust 语言保证提供了新的优化。
  • Rust 现在支持 main 中的自定义退出代码,包括实现新稳定的 Termination 特征的用户定义的类型。
  • cargo 支持更多对依赖项功能的控制。"dep:"前缀可以在不公开为功能的情况下引用可选的依赖项,而"?"仅在其它地方启用了依赖项功能,如 "package-name?/feature-name"。
  • cargo 有一个新的 cargo add 子命令,用于向 Cargo.toml 添加依赖项。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat