Rust

跳转到:导航搜索
Rust 是一种多范式、通用的编程语言。Rust 强调性能、类型安全和并发性。Rust 强制执行内存安全——也就是说,所有引用都指向有效的内存——而无需像其他内存安全语言那样使用垃圾回收器或引用计数。为了同时强制执行内存安全并防止并发数据竞争,Rust 的“借用检查器”会在编译期间跟踪程序中所有引用的对象生命周期。Rust 在系统编程中很受欢迎,但也提供高级功能,包括一些函数式编程结构。

安装 Rust

对于 Rust 编程,您需要以下工具

  • Rust(编译器、链接器和调试器)
  • Cargo(包管理器)
  • 您选择的文本编辑器

对于大多数用户,您只需要安装 Rust 和 Cargo 的稳定版本。这可以通过一个命令完成

用户 $ sudo zypper install rustup && rustup toolchain install stable

然后,您可以随时使用以下命令更新您的工具链。

用户 $ rustup update

高级安装

Nightly

对于需要 Rust nightly 版本的用户,您可以安装 rustup,然后安装 Rust 的 nightly 版本

用户 $ rustup toolchain install nightly

使用与 openSUSE 软件包相同的版本

如果您希望构建与 openSUSE 中用于软件包构建的 rust 版本相同(不推荐),您可以先卸载 rustup

用户 $ sudo zypper rm rustup

然后从仓库中直接安装 cargo

用户 $ sudo zypper install cargo

请注意,分发的 rust 版本没有语言服务器或其他 IDE 集成。

更多 rustup 用法示例…

创建一个 Rust 项目

Cargo 是 Rust 的包管理器。它也可以创建 Rust 项目

用户 $ cargo new world_hello && cd world_hello

创建的项目具有以下结构

├── .git
├── .gitignore
├── Cargo.toml  # the project information and dependencies
└── src
    └── main.rs # the main source code

要快速运行您的项目

用户 $ cargo run

您将看到如下输出

Compiling world_hello v0.1.0 (/home/bob/world_hello)
    Finished dev [unoptimized + debuginfo] target(s) in 0.43s
     Running `target/debug/world_hello`
Hello, world!

学习 Rust 编程

打包用 Rust 编写的软件

请参阅详细的打包指南:打包 Rust 软件

为了帮助提高 OBS/IBS 性能,您可能还希望启用 sccache 以提高重建时间

打包 Rust 编译器

请参阅详细指南:打包 Rustlang

Rust 在 OpenSUSE 调查结果

2021 年 9 月

分析 - 维护者撰写

来自 rust 调查的报告 - 组合了部分和完整的调查结果

来自 rust 调查的完整报告 - 完全完整的调查结果