游乐游手机版
首页/编程语言/文章详情

Ubuntu系统安装与配置Rust环境详细教程

时间:2026-05-08 21:21
在Ubuntu中配置Rust开发环境,需更新系统并安装编译工具链。推荐使用rustup安装,安装后需激活环境变量。国内用户可配置镜像源以加速更新和依赖下载。安装后可通过Cargo管理项目,或用rustc直接编译。常见问题如缺少链接器、下载慢等,可通过安装组件、配置镜像或检查环境变量解决。

想要在 Ubuntu 系统上搭建 Rust 开发环境,体验其卓越的性能与内存安全特性?本指南将为你提供一份从系统准备到成功运行第一个 Rust 程序的完整教程,特别包含了针对国内开发者的网络加速配置方案以及常见问题的排查方法,助你高效入门。

Rust在Ubuntu中如何配置

一、安装前的准备工作

在开始安装 Rust 之前,确保你的 Ubuntu 系统已更新并安装了必要的编译工具链至关重要。这一步能有效预防后续可能出现的“链接器未找到”等典型错误,为顺利安装奠定基础。

请打开终端,输入并执行以下命令:

sudo apt update && sudo apt install -y curl build-essential gcc make

这条组合命令主要完成两项任务:首先,更新系统的软件包列表以获取最新信息;其次,安装几个核心开发工具。其中,curl 用于下载安装脚本,而 build-essentialgccmake 则组成了 GNU 编译工具链,它们是编译 Rust 源代码不可或缺的基础组件。

二、安装与配置 Rust 工具链

目前,官方推荐使用 Rust 工具链管理器 rustup 进行安装。它支持多版本共存、轻松切换和便捷更新,是管理 Rust 环境最灵活高效的方式。

使用 rustup 进行安装

通过官方提供的脚本进行安装是最直接快捷的方法:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

脚本运行后,会提示你选择安装模式。对于绝大多数初次安装的用户,直接按回车键选择默认选项(安装稳定的发布版工具链以及包管理器 Cargo)即可。

安装过程结束后,需要让系统加载 Rust 的环境变量。你可以立即执行以下命令使其在当前终端生效:

source $HOME/.cargo/env

或者,更简便的方法是直接关闭当前终端窗口,重新启动一个新的终端会话。之后,通过以下命令来验证 Rust 和 Cargo 是否安装成功:

rustc --version
cargo --version

如果终端正确显示了 Rust 编译器和 Cargo 包管理器的版本号,那么恭喜你,Rust 开发环境已经成功部署。

中国大陆网络加速配置(可选但推荐)

考虑到国内特殊的网络访问环境,配置国内镜像源可以显著提升 Rust 工具链更新和依赖包(crate)的下载速度,避免因网络超时导致的安装失败。以下提供两种主流加速方案,你可以根据情况选择其一或组合使用。

方案一:设置 rustup 环境变量(加速工具链本身更新)
在运行安装脚本之前或之后,执行以下命令:

export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

为了永久生效,建议将这两行命令添加到你的 Shell 配置文件(如 ~/.bashrc~/.zshrc)末尾。

方案二:配置 Cargo 镜像源(加速第三方库下载)
这一步对于日常开发更为关键,能极大加快项目构建时下载依赖的速度。你需要创建或修改 ~/.cargo/config.toml 这个配置文件。

例如,配置使用清华大学开源软件镜像站:

[registries]
crates-io = { index = "https://mirrors.tuna.tsinghua.edu.cn/crates.io-index" }

或者,配置使用中国科学技术大学镜像源来替换默认的 crates.io 源:

[source.crates-io]
replace-with = 'ustc'

[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

其他安装与维护方式

备选方案:通过系统包管理器安装
如果你偏好使用 Ubuntu 自带的包管理器统一管理所有软件,也可以使用 apt 命令安装:

sudo apt install -y rustc cargo

但请注意,通过此方式安装的 Rust 版本可能不是最新的稳定版。如需卸载,可使用以下命令:

sudo apt remove cargo && sudo apt autoremove

日常维护命令
如果通过 rustup 安装,将 Rust 工具链更新到最新的稳定版本非常简单:

rustup update

若需要彻底卸载 rustup 及其管理的所有 Rust 工具链,可以运行官方提供的卸载命令:

rustup self uninstall

三、创建并运行你的第一个 Rust 项目

环境配置完成后,就可以开始编写你的首个 Rust 程序了。Rust 内置的包管理器 Cargo 极大地简化了项目的创建、编译、运行和依赖管理流程。

使用 Cargo 创建新项目
执行以下命令,Cargo 会自动创建一个名为 “hello_world” 的二进制项目目录,并生成包含基础代码和配置文件的标准项目结构:

cargo new hello_world && cd hello_world

进入项目目录后,你可以使用以下核心命令:

  • 编译项目:执行 cargo build。该命令会编译项目,生成的可执行文件位于 target/debug/ 目录下。
  • 直接运行项目:执行 cargo run。此命令会先自动完成编译,然后立即运行生成的可执行文件,非常适合快速测试。
  • 进行发布构建:执行 cargo run --releasecargo build --release。这会启用更高级别的优化,生成的产物位于 target/release/ 目录,运行速度更快,体积更小,适用于最终部署。

直接使用 rustc 编译器
对于单个独立的 Rust 源代码文件,你也可以绕过 Cargo,直接使用 Rust 编译器进行编译:

rustc main.rs && ./main

这种方法适用于快速测试一小段代码逻辑,非常轻便。

四、常见问题与解决方案

即使按照指南操作,偶尔也可能遇到一些问题。以下是几个典型故障及其排查思路:

  • 编译时报错 “linker ‘cc’ not found”:这通常表明系统缺少 C 语言链接器。请返回“安装前的准备工作”部分,确认已成功安装 build-essential 或至少安装了 gcc 包。
  • 下载速度极慢或始终失败:首先,请检查是否已按照上文“中国大陆网络加速配置”部分正确设置了环境变量或 Cargo 镜像源。配置完成后,可以尝试运行 cargo update 来刷新包索引缓存。若问题依旧,请检查本地网络连接,或尝试切换其他网络环境。
  • 安装后 rustccargo 命令无法识别:最常见的原因是 Shell 环境变量未正确加载。请确认已执行 source $HOME/.cargo/env 命令,或者已经重新启动了终端窗口。如果使用的是 apt 安装的旧版本,请注意系统路径和版本可能存在的差异。

遵循以上步骤,你应该能够在 Ubuntu 系统上顺利完成 Rust 开发环境的搭建与配置。接下来,就可以深入探索 Rust 独特的所有权系统、无畏并发等强大特性,开启高效安全的系统编程之旅。

来源:https://www.yisu.com/ask/39617110.html
上一篇Composer设备流水线动画制作教程与多模型同步位移方法汇总 下一篇HDFS集群扩容的几种常用方法与操作步骤
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
列表遍历时动态判断阈值并返回相应文本
编程语言 · 2026-07-08

列表遍历时动态判断阈值并返回相应文本

遍历数值列表时,先筛选满足阈值的元素,再根据结果输出列表或友好提示。推荐使用列表推导式结合条件判断,注意边界用`>=`,空列表自动为假。也可用`any()`提前终止遍历,提升效率。此法简洁,避免显式循环,特别适合阈值筛选。

Maven项目中如何强制使用本地构建的依赖版本
编程语言 · 2026-07-08

Maven项目中如何强制使用本地构建的依赖版本

多模块开发中强制使用本地依赖的正确做法是使用-SNAPSHOT版本并配合`-U`参数强制更新,或重构为多模块项目统一管理生命周期。避免使用版本范围语法或手动复制JAR,确保构建行为可靠可重复。

Go语言net.Conn并发写安全与原子性保障解析
编程语言 · 2026-07-08

Go语言net.Conn并发写安全与原子性保障解析

Go标准库中net Conn支持并发方法调用,但Write()不保证原子性。多goroutine同时写入时,系统可能拆分数据包,导致内容交错,破坏消息边界。必须使用互斥锁或bufio Writer等显式同步机制确保写操作完整性,不可依赖系统调用本身的原子性。

Python在Windows系统中获取指定卷标U盘驱动器字母的方法
编程语言 · 2026-07-08

Python在Windows系统中获取指定卷标U盘驱动器字母的方法

使用Pythonwmi库通过Win32_Volume接口查询Windows系统中卷标为“TOSHIBA”的U盘盘符。需安装wmi和pywin32,注意大小写区分及多设备过滤。仅适用于Windows。

TP6.0消息已读功能基于Redis Bitmap未读计数方案
编程语言 · 2026-07-08

TP6.0消息已读功能基于Redis Bitmap未读计数方案

TP6 0中使用Redis位图实现消息已读标记,每条消息仅占一个比特,内存效率高。需将消息ID映射为连续偏移量,通过SETBIT和GETBIT操作。需提前维护用户ID到偏移量的映射表,注意键过期与驱动类型(phpredis与predis)问题。此方法内存极省,适合海量消息场景,且需确保偏移量唯一。