Rust 语言介绍及安装

这篇具有很好参考价值的文章主要介绍了Rust 语言介绍及安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1、简介

1.1 为什么选择Rust

高性能

可靠性

生产力

1.2 用 Rust 构建应用

命令行

WebAssembly

网络

嵌入式

2、安装 Rust

Windows 的 Linux 子系统(WSL)

检查Rust 是最新的

卸载Rust版本:

Cargo:Rust 的构建工具和包管理器

3、配置PATH环境变量

4、开发工具对Rust的支持。

VSCode

主要功能有:

5、编写第一个Rust程序

分析这个 Rust 程序 

 6、使用 Cargo 创建项目

构建并运行Cargo项目

发布(release)构建


1、简介

Rust 是一门赋予每个人构建可靠且高效软件能力的语言。

1.1 为什么选择Rust

高性能

Rust 速度惊人且内存利用率极高。由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。

可靠性

Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。

生产力

Rust 拥有出色的文档、友好的编译器和清晰的错误提示信息, 还集成了一流的工具——包管理器和构建工具, 智能地自动补全和类型检验的多编辑器支持, 以及自动格式化代码等等。

1.2 用 Rust 构建应用

命令行

使用 Rust 强大的生态系统快速实现命令行工具。Rust 可助您放心维护,轻松分发应用程序。

WebAssembly

使用 Rust 来逐个增强您的 JavaScript 模块。发布到 npm,使用 webpack 打包,即可感受到惊人的速度提升。

网络

可预见的性能,极小的资源占用,坚如磐石的可靠性。Rust 极其适合网络服务。

嵌入式

针对资源匮乏的设备?需要底层控制而又不失上层抽象的便利?Rust 包您满意!

2、安装 Rust

第一步是安装 Rust。我们会通过 rustup 下载 Rust,这是一个管理 Rust 版本和相关

工具的命令行工具。下载时需要联网。

在 Windows 上,前往 https://www.rust-lang.org/install.html 并按照说明安装 Rust。在安装过程的某个步骤,你会收到一个信息说明为什么需要安装 Visual Studio 2013 或其更新版本的 MSVC 构建工具。

要获取构建工具,你需要安装 Visual Studio 2022。当被问及需要安装什么工作负载(Workload)的时候,请确保勾选了以下内容:

  • “使用 C++ 的桌面开发”(“Desktop Development with C++”)
  • Windows 10(或 11)SDK
  • 英语语言包,以及其他你所需要的语言包

在以下页面地址下载,进行安装:安装 Rust - Rust 程序设计语言

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Windows 的 Linux 子系统(WSL)

如果您是 Windows 的 Linux 子系统(WSL)用户,要安装 Rust,请在终端中运行以下命令,然后根据屏幕上的指示完成。

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

检查Rust 是最新的

Rust 的升级非常频繁。如果您安装 Rustup 后已有一段时间,那么很可能您的 Rust 版本已经过时了。运行 rustup update 获取最新版本的 Rust。

 rustup update

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

查看当前Rust版本:

rustc --version

卸载Rust版本:

rustup self uninstall

 Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Cargo:Rust 的构建工具和包管理器

您在安装 Rustup 时,也会安装 Rust 构建工具和包管理器的最新稳定版,即 Cargo。Cargo 可以做很多事情:

  • cargo build 可以构建项目
  • cargo run 可以运行项目
  • cargo test 可以测试项目
  • cargo doc 可以为项目构建文档
  • cargo publish 可以将库发布到 crates.io。

要检查您是否安装了 Rust 和 Cargo,可以在终端中运行:

cargo --version

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

3、配置PATH环境变量

在Rust开发环境中,所有工具都安装到~/.cargo/bin目录中,在这里您可以找到Rust工具链,包括rustc、cargo和rustup。
因此,Rust开发人员习惯于将此目录包含在他们的PATH环境变量中。在安装过程中,rustup将尝试配置PATH。由于平台、命令外壳和rustup中的错误之间的差异,对PATH的修改可能在控制台重新启动或用户注销之前不会生效,或者根本不会成功。
如果安装后,在控制台运行rustc--version失败,这是最有可能的原因。

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

4、开发工具对Rust的支持。

VSCode

您可以通过Extensions视图(Ctrl+Shift+X)从VS Code中查找并安装rust-analyzer扩展并搜索'rust-analyzer'。选择对应的版本进行安装。

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

主要功能有:

  • 导入插入的代码补全
  • 转到定义、实现、类型定义
  • 查找所有引用,工作区符号搜索,符号重命名
  • 悬停时的类型和文档
  • 类型和参数名称的嵌入提示
  • 语义句法高亮
  • 大量辅助(代码操作)
  • 从错误中应用建议
  • ...还有更多,请查看手册查看全部内容

5、编写第一个Rust程序

接下来,新建一个源文件,命名为 main.rs。Rust 源文件总是以 .rs 扩展名结尾。如果文件名包含多个单词,那么按照命名习惯,应当使用下划线来分隔单词。例如命名为 hello_world.rs

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

fn main() {
    println!("Hello, world!");
}

然后开始编译和运行:

rustc main.rs

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

编译之后会多出2个新的文件,然后运行编译后的可执行文件(main.exe)。

./main.exe

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

分析这个 Rust 程序 

fn main() {

}

这几行定义了一个名叫 main 的函数。main 函数是一个特殊的函数:在可执行的 Rust 程序中,它总是最先运行的代码。第一行代码声明了一个叫做 main 的函数,它没有参数也没有返回值。如果有参数的话,它们的名称应该出现在小括号 () 中。

函数体被包裹在 {} 中。Rust 要求所有函数体都要用花括号包裹起来。一般来说,将左花括号与函数声明置于同一行并以空格分隔,是良好的代码风格。

在 main 函数中有如下代码:

fn main() {
    println!("Hello, world!");
}

这行代码完成这个简单程序的所有工作:在屏幕上打印文本。这里有四个重要的细节需要注意。首先 Rust 的缩进风格使用 4 个空格,而不是 1 个制表符(tab)。

第二,println! 调用了一个 Rust 宏(macro)。如果是调用函数,则应输入 println(没有!)。我们将在第十九章详细讨论宏。现在你只需记住,当看到符号 ! 的时候,就意味着调用的是宏而不是普通函数,并且宏并不总是遵循与函数相同的规则。

第三,"Hello, world!" 是一个字符串。我们把这个字符串作为一个参数传递给 println!,字符串将被打印到屏幕上。

第四,该行以分号结尾(;),这代表一个表达式的结束和下一个表达式的开始。大部分 Rust 代码行以分号结尾。

 6、使用 Cargo 创建项目

Cargo 是 Rust 的构建系统和包管理器。大多数 Rustacean 们使用 Cargo 来管理他们的 Rust 项目,因为它可以为你处理很多任务,比如构建代码、下载依赖库并编译这些库。

首先可以查看下,本地是否已安装cargo,如下所示:

cargo --version

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

然后,开始创建项目:

cargo new hello_cargo

 进入 hello_cargo 目录并列出文件。将会看到 Cargo 生成了四个文件和一个目录:一个 Cargo.toml 文件,一个 src 目录,以及位于 src 目录中的 main.rs 文件,一个.git文件夹,一个.gitignore文件。

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Cargo.toml 文件这是 Cargo 配置文件的格式。文件内容如下所示:

[package]
name = "hello_cargo"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]

构建并运行Cargo项目

我们可以通过以下命令进行构建,如下所示:

cargo build

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

该命令会生成target目录,会创建一个可执行文件 target/debug/hello_cargo (在 Windows 上是 target\debug\hello_cargo.exe) 

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

我们可以执行对应路径下的可执行文件,如下所示:

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

我们刚刚使用 cargo build 构建了项目,并使用 ./target/debug/hello_cargo 运行了程序,也可以使用 cargo run 在一个命令中同时编译并运行生成的可执行文件:

cargo run

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

Cargo 还提供了一个叫 cargo check 的命令。该命令快速检查代码确保其可以编译,但并不产生可执行文件:

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

为什么你会不需要可执行文件呢?通常 cargo check 要比 cargo build 快得多,因为它省略了生成可执行文件的步骤。如果你在编写代码时持续的进行检查,cargo check 可以让你快速了解现在的代码能不能正常通过编译!为此很多 Rustaceans 编写代码时定期运行 cargo check 确保它们可以编译。当准备好使用可执行文件时才运行 cargo build

发布(release)构建

当项目最终准备好发布时,可以使用 cargo build --release 来优化编译项目。这会在 target/release 而不是 target/debug 下生成可执行文件。这些优化可以让 Rust 代码运行的更快,不过启用这些优化也需要消耗更长的编译时间。这也就是为什么会有两种不同的配置:一种是为了开发,你需要经常快速重新构建;另一种是为用户构建最终程序,它们不会经常重新构建,并且希望程序运行得越快越好。如果你在测试代码的运行时间,请确保运行 cargo build --release 并使用 target/release 下的可执行文件进行测试。

cargo build --release

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc

然后运行,release目录下的可执行文件就行,如下图所示:

Rust 语言介绍及安装,Rust,1024程序员节,rust,cargo,rsutup,rustc文章来源地址https://www.toymoban.com/news/detail-735108.html

到了这里,关于Rust 语言介绍及安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 好用且免费的CodeWhisperer,给1024程序员节送礼来了

          国庆期间没有胆量去人从众的景点,关在家里刷手机时意外在亚马逊的User Group公众号上发现了CodeWhisperer这么个好东西(bu yao qian),以后撸代码也可以提高生产力(fang yang mo yu)了,这还不赶紧上手试一下。看官方介绍说它支持流行的IDE开发工具,包括VS Code、Intelli

    2024年02月08日
    浏览(49)
  • Rust 语言介绍及安装

    目录 1、简介 1.1 为什么选择Rust 高性能 可靠性 生产力 1.2 用 Rust 构建应用 命令行 WebAssembly 网络 嵌入式 2、安装 Rust Windows 的 Linux 子系统(WSL) 检查Rust 是最新的 卸载Rust版本: Cargo:Rust 的构建工具和包管理器 3、配置PATH环境变量 4、开发工具对Rust的支持。 VSCode 主要功能有

    2024年02月06日
    浏览(60)
  • 1024程序员节带你玩转图片Exif信息获取之JavaScript

    目录 一、前言 二、背景 三、Exif.js          1、Exif.js 简介 2、Exif.js 引入 四、多场景展示数据获取 1、原始图片直接获取  2、base64 编码文件加载  3、文件上传的方式加载  五、总结        1024是2的十次方,二进制计数的基本计量单位之一。1G=1024M,而1G与1级谐音,也有一

    2024年02月20日
    浏览(56)
  • 1024程序员节特辑 | Spring Boot实战 之 MongoDB分片或复制集操作

    Spring实战系列文章: Spring实战 | Spring AOP核心秘笈之葵花宝典 Spring实战 | Spring IOC不能说的秘密? 国庆中秋特辑系列文章: 国庆中秋特辑(八)Spring Boot项目如何使用JPA 国庆中秋特辑(七)Java软件工程师常见20道编程面试题 国庆中秋特辑(六)大学生常见30道宝藏编程面试题

    2024年02月08日
    浏览(77)
  • 1024程序员节特辑 | ELK+ 用户画像构建个性化推荐引擎,智能实现“千人千面”

    专栏集锦,大佬们可以收藏以备不时之需 Spring Cloud实战专栏:https://blog.csdn.net/superdangbo/category_9270827.html Python 实战专栏:https://blog.csdn.net/superdangbo/category_9271194.html Logback 详解专栏:https://blog.csdn.net/superdangbo/category_9271502.html tensorflow专栏:https://blog.csdn.net/superdangbo/category_869

    2024年02月07日
    浏览(80)
  • 1024程序员狂欢节 | IT前沿技术、人工智能、数据挖掘、网络空间安全技术

    一年一度的1024程序员狂欢节又到啦!成为更卓越的自己,坚持阅读和学习,别给自己留遗憾,行动起来吧! 那么,都有哪些好书值得入手呢?小编为大家整理了前沿技术、人工智能、集成电路科学与芯片技术、新一代信息与通信技术、网络空间安全技术,四大热点领域近期

    2024年02月06日
    浏览(64)
  • 1024程序员节?我们整点AI绘图玩玩吧,一文教你配置stable-diffusion

    需提前准备:一台高性能的电脑(尤其是显存)、python、Git、梯子。 其实Github上有很多关于Stable diffusion的库,综合对比之后,我选取的是比较全面的AUTOMATIC1111这个,源码链接:Stable-diffusion(Github) 找到安装那块的教程,此教程以windows为例。 ps:如果你电脑上已经有了pyt

    2024年01月16日
    浏览(71)
  • 1024程序员节特辑 | 解密Spring Cloud Hystrix熔断提高系统的可用性和容错能力

    专栏集锦,大佬们可以收藏以备不时之需 Spring Cloud实战专栏:https://blog.csdn.net/superdangbo/category_9270827.html Python 实战专栏:https://blog.csdn.net/superdangbo/category_9271194.html Logback 详解专栏:https://blog.csdn.net/superdangbo/category_9271502.html tensorflow专栏:https://blog.csdn.net/superdangbo/category_869

    2024年02月08日
    浏览(50)
  • PHP框架开发实践 | 1024 程序员节:通过index.php找到对应的controller是如何实现的

    🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于PHP专栏:PHP进阶实战教程。 🎉欢迎 👍点赞✍评论⭐收藏

    2024年02月08日
    浏览(68)
  • 1024程序员狂欢节有好礼 | 前沿技术、人工智能、集成电路科学与芯片技术、新一代信息与通信技术、网络空间安全技术

    🌹欢迎来到 爱书不爱输的程序猿 的博客, 本博客致力于知识分享,与更多的人进行学习交流 🚩🚩🚩 点击直达福利 一年一度的1024程序员狂欢节又到啦!成为更卓越的自己,坚持阅读和学习,别给自己留遗憾,行动起来吧! 那么,都有哪些好书值得入手呢?小编为大家整理

    2024年02月08日
    浏览(76)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包