前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Rust的开发环境与工具

Rust的开发环境与工具

作者头像
端碗吹水
发布于 2022-06-01 01:07:01
发布于 2022-06-01 01:07:01
1K00
代码可运行
举报
运行总次数:0
代码可运行

[TOC]

开发环境安装

无论使用何种系统, 均可以根据 Rust 官方网站提供的 rustup-init 工具完成 Rust 的安装. rustup-init 下载地址:

https://www.rust-lang.org/zh-CN/tools/install.

网站会自动识别你的操作系统并给出提示, 遵循网站提示一步一步执行即可.

当安装完成后, 可使用以下命令进行测试, 如果正确输出版本号则表明安装已经成功.

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ rustc --version
  • Tips:如果你使用的是 Linux 系统, 那么在 rustup-init 运行完成后它会在命令行中提示你将软件安装目录加入 PATH 环境变量中. 对于 Windows 系统来说不需要这一步.

开发工具

使用 vscode 并配置 rust-analyzer 插件在目前看来是一个比较好的选择.

  1. 安装 vscode
  2. 在 vscode 的插件市场中, 安装 rust-analyzer 插件

rust-analyzer 包含代码提示, 代码检查, 自动补全等多种功能. 你可能会注意到在插件市场中存在一个标了小星星的名字就叫 Rust 的插件, 它的下载量与安装量都远远高于 rust-analyzer, 那么为什么不选择使用它呢? 因为这个排名第一的 Rust 插件底层使用的是名为 rls 的 Rust 前端, 由于 rls 本身性能过于捉急, 在 2020 年的时候社区推出了 rust-analyzer 项目并旨在全面替换掉 rls. 在体验上, rust-analyzer 要远远好于 rls.


Hello World

Cargo 是 Rust 默认的项目管理工具, 它几乎会贯穿你的整个 Rust 开发周期, 包括项目的创建, 引入第三方库, 编译, 测试和运行等. 使用如下命令可以创建一个新的 Rust 工程,rust-learn为工程名称:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cargo new rust-learn
  • Cargo 默认会携带 --bin 参数, 这意味着该项目是一个二进制程序. 如果要创建一个库, 我们需要传递 --lib.

生成的项目目录结构如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.
├── Cargo.toml
└── src
    └── main.rs
  • Cargo.toml 是项目的描述文件, 它里面保存了项目的依赖库, 项目的名称, 版本号等信息
  • src 是源码目录
  • src/main.rs 是项目的入口点

Cargo.toml的内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[package]
name = "rust-learn"  # 项目名称
version = "0.1.0"    # 版本号
edition = "2018"     # 最新的rust edition版本,即语法稳定版本

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
# 依赖声明
[dependencies]

main.rs的内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fn main() {
    println!("Hello, world!");
}

使用如下命令可以编译并运行项目:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cd rust-learn
$ cargo run

   Compiling rust-learn v0.1.0 (W:\WorkSpace\Rust\rust-learn)
    Finished dev [unoptimized + debuginfo] target(s) in 0.79s
     Running `target\debug\rust-learn.exe`
Hello, world!

Cargo 里面有许多有用的命令, 一些常用的命令包括:

  • cargo new 生成新的项目模板
  • cargo build 构建项目, 生成可执行文件或依赖
  • cargo run 构建并运行项目
  • cargo test 运行测试用例
  • cargo check 检查项目代码, 由于 Rust 编译较慢, 因此在开发中常用 check 代替 build 命令
  • cargo doc 生成项目文档
  • cargo publish 将库发布到 crates.io

除了以上 cargo 自带的命令外, cargo 还支持安装额外的扩展命令, 例如格式化工具. rustfmt 是一个可以自定义风格的 rust 代码格式化工具, 使用如下命令安装它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ rustup component add rustfmt

在项目根目录输入以下命令, 会自动格式化项目内的全部 Rust 源文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cargo fmt
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Rust入坑指南
众所周知,在编程语言中,更易读的高级语言和控制底层资源的低级语言是一对矛盾体。Rust想要挑战这一现状,它尝试为开发者提供更好的体验的同时给予开发者控制底层细节的权限(比如内存使用)。
Jackeyzhe
2020/03/10
8300
Rust工作空间(workspace)实践
本文将介绍如何使用cargo workspace来管理多个package,并通过实践介绍workspace的一些基础场景下的使用、配置方式。
w4ngzhen
2024/05/10
2820
Rust工作空间(workspace)实践
Rust 从入门到精通03-helloworld
安装完成 Rust 之后,我们可以编写 Rust 的 Hello Word。这里介绍两种方式,一种是rust原生方式,一种是利用 cargo 工具(重要)
IT可乐
2022/09/19
6290
Rust 从入门到精通03-helloworld
【Rust学习】01_入门
让我们开始您的 Rust 之旅吧!有很多东西要学,但每一段旅程都是从第一步开始的,在本章中,我们将一起来学习以下知识点:
思索
2024/06/24
1720
【Rust学习】01_入门
Rust修仙笔记之炼气期
当我们在项目根目录执行cargo run,此时就运行了rust写的第一个项目,并打印出了main.rs文件
Maic
2024/01/26
1220
Rust修仙笔记之炼气期
Rust 赋能前端-开发一款属于你的前端脚手架
大家好,我是「柒八九」。一个「专注于前端开发技术/Rust及AI应用知识分享」的Coder。
前端柒八九
2024/01/11
6930
Rust 赋能前端-开发一款属于你的前端脚手架
超干货!大型 Rust 项目经验分享
在本篇文章中,我将分享我组织大型 Rust 项目的经验。但这绝不是权威的,只是我通过尝试和错误中发现的一些小技巧。
MikeLoveRust
2021/12/16
1.3K0
「Rust语言」最全的Rust初学者的完全免费资源
下面的图表来自评测游戏,显示了Rust与其他编程语言相比是多么的快。你可以在这里找到Go语言的对比。
架构师研究会
2021/01/06
2.2K0
「Rust语言」最全的Rust初学者的完全免费资源
🦀 新手必看!小小白也能用Rust点亮LED,入门嵌入式开发(下)
在🦀 新手必看!小小白也能用Rust点亮LED,入门嵌入式开发(上)中,我们探讨了为什么对编程新手而言,Rust的吸引力不在于内存安全,以及为何用Rust点亮LED比写Hello World更有趣。我们还学习了如何通过Rust代码点亮第一个LED灯,开启了Rust嵌入式开发之旅。
程序员吾真本
2024/12/07
2400
🦀 新手必看!小小白也能用Rust点亮LED,入门嵌入式开发(下)
【Rust 易学教程】学前准备:Cargo, 你好
当你开始学习 Rust 时,很快就会遇到 Cargo,它是 Rust 生态系统中用于构建和运行 Rust 应用程序的标准工具。在 《Rust 易学教程》 首篇中,我会简要概述一下 Cargo 是什么,以及它如何适应更广泛的生态系统。
前端修罗场
2023/10/23
4560
【Rust 易学教程】学前准备:Cargo, 你好
学Rust不学Cargo,等于没学Rust:workspace详解
上一篇文章我们介绍了Cargo.toml中的features配置块,这次我们再来看看workspace配置块的用法。
程序饲养员
2024/01/02
4830
《Rust 快速上手》--- 环境安装
平时使用 Python,JAVA 来写自动化。但是感觉性能上总是有点小不足。今天在极客时间上看到了一门讲 Rust 的课程,看到如下一段文字:
IT蜗壳-Tango
2023/12/19
3170
《Rust 快速上手》--- 环境安装
rust 入门笔记:环境安装、hello World、Cargo
github地址:https://github.com/yunwei37/os-summer-of-code-daily
云微
2023/02/24
7830
Rust安装与入门
由于网络问题,执行失败的话,多执行几次总会成功。 安装选项选Proceed with installation (default)即可。
月梦@剑心
2023/08/31
5520
Rust安装与入门
Rust学习笔记之Rust环境配置和入门指南
在前端技术,如雨后春笋般破土而出的今天。其技术偏向性,不仅仅是搞一个新的技术框架,更多的是往高性能和底层技术发展。比方说,利用Rust特性所编写的SWC前端构建工具,目前核心功能相当于 Babel;还有就在2022年10月26日,Vercel 公司正式宣布推出新的打包工具 Turbopack,他们用基于 Rust 的 SWC 替换基于 JavaScript 的转译器 Babel,速度提升了 17 倍。他们还替换了 Terser,压缩的速度提高了 6 倍,从而减少了加载时间和带宽的使用;还有在一些原本只能在客户端运行的程序,现在也被移植到浏览器中运行,例如AutoCAD/Photoshop等,而这些都依赖近期比较热门的WebAssembly技术。
前端柒八九
2022/12/19
1.1K0
Rust学习笔记之Rust环境配置和入门指南
【Rust日报】 2019-11-10 - 为Rust应用构建小而快速的镜像
这篇文章我会介绍如何为Rust应用创建小且快速的Docker镜像。 我将会从创建一个小的测试应用开始,然后不断构建迭代Dockerfile。
MikeLoveRust
2019/11/12
2.1K0
【Rust】Rust环境配置与语法基础
Rust是一种创新型的系统编程语言,由Mozilla研发。它将C++的高性能和控制力与安全性、并发性和现代语言设计相结合。
DevFrank
2024/07/24
1410
【Rust学习】02_猜谜游戏
让我们一起动手完成一个项目,来快速上手 Rust!本章将介绍 Rust 中一些常用概念,并向您展示如何在实际项目中运用它们。您将会学到 let、match、方法、关联函数、引用外部 crate 等知识!后续章节会深入探讨这些概念的细节。
思索
2024/06/26
1690
【Rust学习】02_猜谜游戏
听GPT 讲Rust源代码--src/tools(18)
在Rust源代码中的from_comment.rs文件位于Rust分析器(rust-analyzer)工具的ide-ssr库中,它的作用是将注释转换为Rust代码。
fliter
2024/01/09
1970
听GPT 讲Rust源代码--src/tools(40)
在Rust源代码中,rust/src/tools/rustfmt/src/visitor.rs这个文件的作用是实现了Rustfmt的访问器模块,用于遍历Rust代码并进行格式化。该模块定义了几个重要的结构体:SnippetProvider和FmtVisitor。
fliter
2024/02/26
2680
推荐阅读
相关推荐
Rust入坑指南
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验