当前位置: 首页 > news >正文

【一起学rust | 基础篇】环境配置

image

【一起学rust | 基础篇】环境配置

工欲善其事,必先利其器。在我们进入到rust的世界之前,首先需要将我们的环境配置完成,如编译环境,书写代码的工具以及提升我们编程体验的插件等。

安装rust

可以去到官网根据指示进行安装,rust的官网其实已经做的很完善了,它可以识别你的操作系统并且给出相应的安装建议,当然,如果你恰好读到这篇文章,又恰好对rust产生了兴趣,也可以跟着笔者的这篇文章来搭建rust环境。走起~

linux macos

Linux上安装rust是一件非常简单的事情,只需要一行命令,或者使用你所用发行版的包管理器来安装,不过,据笔者使用所知,除了Arch Linux的包比较新之外,其他发行版的rust包版本好像都有那么一丢丢的旧,所以如果你想使用或体验最新版本的rust,建议使用下面这行命令一键安装(ps: 好像要一些科学,谁知道呢)。

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

当然,macos的用户也可以使用上述命令进行安装。

安装过程中全部选择默认即可。

安装完成之后可以在命令行中输入来验证是否安装成功了:

❯ rustup --version
rustup 1.28.2 (e4f3ad6f8 2025-04-28)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.89.0 (29483883e 2025-08-04)`
❯ cargo version
cargo 1.89.0 (c24e10642 2025-06-23)

要更新的时候输入rustup update即可。

Windows

相较于LinuxmacOS命令行一键安装,Windows上的安装相对来说比较繁琐一些,首先,你要去下载Visual Studio,下载地址:官网,可以选择社区版,pro版(ps: 网上好像有vs2022的激活码可以用,现在不知道还行不行了)。

要安装这个IDE的原因呢,官方给出的解释是:

  • 要将程序编译为 exe 文件,Rust 需要一个链接器、库和 Windows API 导入库。 为msvc可以通过 Visual Studio 获取这些目标。

所以就老老实实安装吧。

image

选择适合自己的安装即可,就可以满足rustWindows上的安装要求。(吐槽: 这玩意有点儿大,安装的时候注意安装路径以及你要安装的包,不过对于C/C++选手来说这是一个非常不错的IDE)。

代码编辑器

rust现在也是比较热门的编程语言了,所以各种常见的代码编辑器,如:VIMNeoVIMVscode等编辑器均有了相关的插件,可以看一下官网给出的支持的编辑器:

image

可以说已经很多了,jetbrains家族的Clion经过配置可以编写rust,其甚至推出了专门的编辑器RustRover。感兴趣的小伙伴可以移步链接:RustRover进行下载,这玩意现在还是免费的,习惯了使用jetbrains家族编辑器的可以去体验一下。笔者这里主要推荐VScode,为什么?rust语言圣经推荐的。主要还是因为习惯了VScode经过配置之后,所有的编程工作都可以在上面做,不用挨个软件的去换,就美滋滋。

vscode及插件安装

相信读这篇文章的小伙伴应该都是编程入门的,或者是些大牛子(先磕一个,写的不好轻点儿骂),也有可能是小白,不过没事,安装VSCode,去到官网下载页面,选择对应的安装包,下载之后,无脑下一步就行。

image

当然了,Windows用户还是注意一下安装路径,分盘了的,将安装路径改在除C盘以外的盘符即可。

安装完VSCode,打开后,点击左侧的这个图标:

image

打开插件安装,搜索拦里搜索rust,不出意外,你应该能看到有一堆rust插件,这里我们关注两个插件:

image

一个叫rust,作者是The Rust Programming Language,虽然是官方出品,但是我们不选择他,具体原因是因为虽然是官方出品,但是已经不再维护了,且这个插件或多或少有些问题,综合下来,我们选择第二个rust-analyzer作为rust语言的插件,这个插件虽然是社区在维护,但是真的很香,所以rust社区也是rust为什么能这么火的一个理由。

剩下的插件是为了提升编程体验:

  1. Even Better TOML,支持 .toml 文件完整特性
  2. Error Lens, 更好的获得错误展示
  3. One Dark Pro, 非常好看的 VSCode 主题
  4. CodeLLDB, Debugger 程序

好了,当这些插件工具都安装齐整之后,我们便可以去掀开rust一丝神秘面纱,瞧见下面的惊世容颜。

cargo

对于cargo,现在的我们并不需要知晓太多,只需要知道它是类似nodejs下的npm包管理工具,这意味这任何用户拿到你的代码,都能运行的起来。总而言之,cargo 提供了一系列的工具,从项目的建立、构建到测试、运行直至部署,为 Rust 项目的管理提供尽可能完整的手段。同时,与 Rust 语言及其编译器 rustc 紧密结合。

目前我们只需要知晓它的几个基础功能即可。

创建项目

创建一个hello_world的项目

❯ cargo new hello_wordCreating binary (application) `hello_word` package
note: see more `Cargo.toml` keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

上面的命令使用 cargo new 创建一个项目,项目名是 hello_world ,该项目的结构和配置文件都是由 cargo 生成,意味着我们的项目被 cargo 所管理

看一下项目结构:

❯ tree -a
.
├── Cargo.toml
├── .git
│   ├── config
│   ├── description
│   ├── HEAD
│   ├── hooks
│   │   ├── applypatch-msg.sample
│   │   ├── commit-msg.sample
│   │   ├── fsmonitor-watchman.sample
│   │   ├── post-update.sample
│   │   ├── pre-applypatch.sample
│   │   ├── pre-commit.sample
│   │   ├── pre-merge-commit.sample
│   │   ├── prepare-commit-msg.sample
│   │   ├── pre-push.sample
│   │   ├── pre-rebase.sample
│   │   ├── pre-receive.sample
│   │   ├── push-to-checkout.sample
│   │   ├── sendemail-validate.sample
│   │   └── update.sample
│   ├── info
│   │   └── exclude
│   ├── objects
│   │   ├── info
│   │   └── pack
│   └── refs
│       ├── heads
│       └── tags
├── .gitignore
└── src└── main.rs11 directories, 21 files

可以看到,连.git都创建好了。

编译项目

cargo能做的很多,一条龙服务:

运行项目:

❯ cargo runCompiling hello_word v0.1.0 (/home/xvzhang/Workspace/dev/rust/study/hello_word)Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.18sRunning `target/debug/hello_word`
Hello, world!

编译项目:

❯ cargo build --releaseCompiling hello_word v0.1.0 (/home/xvzhang/Workspace/dev/rust/study/hello_word)Finished `release` profile [optimized] target(s) in 0.07s

这样,项目就会被编译成二进制文件,我们可以分享给其他没有rust环境的人使用。这里需要注意的是,当你要构建生产环境使用的文件时,需要使用到--release参数,它会自动优化你的项目文件,并且跳过一些严格的检查。当你不带该参数时,编译器不会优化编译,并且检查会很严格,这也是rust的优势之一,毕竟,在编译期就发现代码中存在的错误总比投入到生产环境之后再发现要好很多,所以在测试阶段,我们尽量使用cargo buildcargo run即可。

还有一个,就是在运行代码之前,可以让编译器先进行一次检查,也就是check

❯ cargo checkChecking hello_word v0.1.0 (/home/xvzhang/Workspace/dev/rust/study/hello_word)Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.03s

它不会运行你的代码,仅仅会检查你的代码是否能通过编译运行,怎么样,是不是很好。当然了,rust编译器这样严苛也不能杜绝bug的出现,它仅仅是凭借它的规则在降低出现bug的可能,所以很严苛,有时候也让人抓狂,尽管如此,也不错不是吗?

总结

经过上述过程,你已经有了rust的学习环境,并且对rust有了一个初步的了解,接下来,我们就要进入rust神秘的世界中了。

http://www.hskmm.com/?act=detail&tid=23888

相关文章:

  • QWEN
  • 趣题记
  • Day25捕获与抛出异常
  • 『回忆录』高二上第一次月考——压力下的崛起,意外中的突破
  • 免费代理池
  • 白箱算力突破:WBUC与「可能性工程」的诞生(AI元人文系列文章)
  • Linux 中 awk命令提取偶数列数据
  • 『随笔』0919
  • 主要编码规范
  • Docker 安装配置 OnlyOffice - Higurashi
  • 什么是计算数学?
  • 数论中的欧拉函数
  • 悬荡悟空:一个异想天开的计算神话及其硬件证言
  • 实用指南:Windows中焦点与软键盘
  • OpenLayers地图交互 -- 章节十五:鼠标滚轮缩放交互详解 - 实践
  • 2025对外AI服务合规指南:6步构建可审计的法律法规遵循体系
  • NOI 七
  • 三霍尔BLDC——已知霍尔元件输出与相线输入电压的关系表,如何写程序
  • 第一
  • 2025.10 模拟赛日志
  • Python算法题
  • ZSH 安装配置
  • Spring事务管理:-propagation
  • VSCode 中无法定位 Go 项目中自定义方法或类
  • 写作业
  • P11164 [BalkanOI 2023] Permutations
  • Spring事务管理:-rollbackFor
  • 微信图片批量保存的办法
  • 详细介绍:使用 C# 设置 Excel 单元格数据验证
  • 10.3 闲话-分散层叠