Ubuntu系统安装与配置Rust环境详细教程
想要在 Ubuntu 系统上搭建 Rust 开发环境,体验其卓越的性能与内存安全特性?本指南将为你提供一份从系统准备到成功运行第一个 Rust 程序的完整教程,特别包含了针对国内开发者的网络加速配置方案以及常见问题的排查方法,助你高效入门。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈

一、安装前的准备工作
在开始安装 Rust 之前,确保你的 Ubuntu 系统已更新并安装了必要的编译工具链至关重要。这一步能有效预防后续可能出现的“链接器未找到”等典型错误,为顺利安装奠定基础。
请打开终端,输入并执行以下命令:
sudo apt update && sudo apt install -y curl build-essential gcc make
这条组合命令主要完成两项任务:首先,更新系统的软件包列表以获取最新信息;其次,安装几个核心开发工具。其中,curl 用于下载安装脚本,而 build-essential、gcc 和 make 则组成了 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 --release或cargo build --release。这会启用更高级别的优化,生成的产物位于target/release/目录,运行速度更快,体积更小,适用于最终部署。
直接使用 rustc 编译器
对于单个独立的 Rust 源代码文件,你也可以绕过 Cargo,直接使用 Rust 编译器进行编译:
rustc main.rs && ./main
这种方法适用于快速测试一小段代码逻辑,非常轻便。
四、常见问题与解决方案
即使按照指南操作,偶尔也可能遇到一些问题。以下是几个典型故障及其排查思路:
- 编译时报错 “linker ‘cc’ not found”:这通常表明系统缺少 C 语言链接器。请返回“安装前的准备工作”部分,确认已成功安装
build-essential或至少安装了gcc包。 - 下载速度极慢或始终失败:首先,请检查是否已按照上文“中国大陆网络加速配置”部分正确设置了环境变量或 Cargo 镜像源。配置完成后,可以尝试运行
cargo update来刷新包索引缓存。若问题依旧,请检查本地网络连接,或尝试切换其他网络环境。 - 安装后
rustc或cargo命令无法识别:最常见的原因是 Shell 环境变量未正确加载。请确认已执行source $HOME/.cargo/env命令,或者已经重新启动了终端窗口。如果使用的是 apt 安装的旧版本,请注意系统路径和版本可能存在的差异。
遵循以上步骤,你应该能够在 Ubuntu 系统上顺利完成 Rust 开发环境的搭建与配置。接下来,就可以深入探索 Rust 独特的所有权系统、无畏并发等强大特性,开启高效安全的系统编程之旅。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Composer动画帧速率批量调整教程 节奏控制方法详解
在3DviaComposer中,无法全局调整动画播放速率,只能通过拉伸或压缩关键帧区间来控制节奏。可使用Stretch功能调整时间跨度,或通过TimeWarp进行非线性重映射。操作时需关闭自动关键帧,避免生成冗余关键帧。注意导出帧速率仅影响视频流畅度,不改变动画本身速度。
Sublime Text配置Go语言环境与GoSublime插件安装教程
GoSublime插件已停止维护,在Go1 21+和SublimeText4环境下问题频发。配置时需手动解决环境路径、项目推断和语言服务器等关键问题,例如确保系统PATH正确、配置GOPATH、更新gopls并禁用内置格式化。即便如此,插件仍可能运行不稳定。建议新项目转向LSP等更现代的替代方案。
Laravel API请求字段长度校验详解 length与max规则组合使用
在LaravelAPI开发中,字段长度校验需区分length与max规则。length要求精确字符数,适用于固定长度字段;max则设定上限,适用于自由输入字段。校验时必须显式声明string类型,避免类型转换错误。处理中文或Emoji时,mb_strlen()按字符计数,需注意数据库编码差异。自定义错误消息需对应具体规则键名。稳健的做法是始终为max min
Laravel模型属性只写字段设置与赋值方法详解
Laravel模型中字段可写入但序列化后不显示,通常与$fillable无关。$fillable仅控制批量赋值,而属性是否可见由$hidden数组、属性转换$casts及访问器逻辑决定。排查时需依次检查数据存储、隐藏规则、访问器及类型转换。若需实现只写不读的业务逻辑,应结合$hidden隐藏字段,并用$appends与访问器追加计算属性。
Laravel队列任务失败处理指南 按异常类型分类归档方法
处理队列任务失败时,最令人困扰的往往不是失败本身,而是失败后产生的混乱局面。在 Laravel 默认机制下,无论是业务校验失败还是数据库连接超时,所有异常都被统一记录到 failed_jobs 表中。排查问题时,就像在一堆混杂的零件中寻找一颗特定的螺丝,效率极低。真正高效的解决方案,是对失败任务进行
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

