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

Rust安装

目录

  • 一、安装
    • 1.1 在Windows上安装
    • 1.2 在Linux下安装
  • 二、包管理工具
  • 三、Hello World
    • 3.1 安装IDE
    • 3.2 输出Hello World

一、安装

1.1 在Windows上安装

  1. 点击页面 安装 Rust - Rust 程序设计语言 (rust-lang.org),选择"下载RUSTUP-INIT.EXE(64位)"进行下载。
    在这里插入图片描述
  2. 下载完成之后双击运行,出现了黑框,默认需要选择,直接使用默认值(按回车)。开始下载
    在这里插入图片描述
    以下的界面出现则安装完成,点击回车之后自动关闭当前终端。
  3. 重新打开一个终端后输出cargo --version ,出现版本信息号则说明安装完成,其显示格式为:版本号,commit号和日期。
    在这里插入图片描述
    使用rustup update命令可以升级Rust到最新版,rustup self uninstall卸载Rust。

1.2 在Linux下安装

      只需要一条命令搞定

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

二、包管理工具

  1. 安装完成后会有以下三条指令。
    在这里插入图片描述
  2. cargo是Rust的编译管理器、包管理器和通用工具。可以用该命令启动新项目、构建和运行程序,并管理代码所依赖的任何外部库。比如
命令功能
cargo build构建项目
cargo build --release为发布而构建
cargo run运行项目
cargo test测试项目
cargo check检查代码
cargo doc可项目构建文档
cargo publish将库发布到crates.io
  1. rustc是Rust编译器。
  2. rustdoc是Rust文档工具,如果程序源代码中以适当形式的注释编写文档,那么rustdoc就可以从中构建出格式良好的HTML。
  3. cargo check只用来检查代码以确保通过编译,但是不产生任何任何可执行文件,它比cargo build快的多。
  4. 直接在命令行中输入rustup doc就会在浏览器中打开本地文档(如下图),点击红色 “Rust API documentation”就能打开API文档。
    在这里插入图片描述

三、Hello World

3.1 安装IDE

  1. 打开vscode的包管理器,搜索rust后安装rustrust-analyzer
    在这里插入图片描述

3.2 输出Hello World

  1. 使用命令cargo new testrust创建一个Rust项目。
    在这里插入图片描述
  2. 用vscode打开testrust文件夹,该文件夹的目录结构如左边所示,且已经在src下创建了main.rs的文件。
    在这里插入图片描述
  3. 使用ctrl+Shift+~ (数字1左边那个键)打开终端,则自动定位到testrust目录下,输入cargo build进行编译。
    在这里插入图片描述
  4. 编译完成后左边的目录树中就会出现编译完成的可执行程序。
    请添加图片描述
  5. 使用cargo run或者专门运行testrust.exe,则会出现目标字符。
    请添加图片描述
  6. 也可以直接使用cargo run一键完成编译+运行的工作。

相关文章:

Rust安装

目录 一、安装1.1 在Windows上安装1.2 在Linux下安装 二、包管理工具三、Hello World3.1 安装IDE3.2 输出Hello World 一、安装 1.1 在Windows上安装 点击页面 安装 Rust - Rust 程序设计语言 (rust-lang.org),选择"下载RUSTUP-INIT.EXE(64位)&qu…...

513.找树左下角的值

给定一个二叉树,在树的最后一行找到最左边的值。 示例 1: 示例 2: 思路: 深度最大的叶子结点一定是最后一行。 优先左边搜索,记录深度最大的叶子节点,此时就是树的最后一行最左边的值 代码: class Solution:def fi…...

docker基础,docker安装mysql,docker安装Nginx,docker安装mq,docker基础命令

核心功能操作镜像 Docker安装mysql docker run -d --name mysql -p 3306:3306 -e TZAsia/Shanghai -e MYSQL_ROOT_PASSWORDlcl15604007179 mysql docker的基本操作 docker rm 容器名称即可 docker ps 查看当前运行的容器 docker rm 干掉当前容器 docker logs 查看容器命令日…...

MyBatis二、搭建 MyBatis

MyBatis二、搭建 MyBatis 开发环境MySQL 不同版本的注意事项驱动程序(Driver)JDBC URL连接参数MyBatis配置文件版本兼容性常见问题与解决方案示例(MySQL 8.x与MyBatis连接) 创建 Maven 工程打包方式:Jar引入依赖创建数…...

昵称生成器

package mainimport ("math/rand" )// 随机昵称 形容词 var nicheng_tou []string{"迷你的", "鲜艳的", "飞快的", "真实的", "清新的", "幸福的", "可耐的", "快乐的", "冷…...

mysql仿照find_in_set写了一个replace_in_set函数,英文逗号拼接字符串指定替换

开发中使用mysql5.7版本数据库,对于英文逗号拼接的字符串,想要替换其中指定的字符串,找不到数据库函数支持,自己写了一个,实测好用! /*类似find_in_set,按英文逗号拆分字段,找出指定的旧字符串,替换成新字…...

机械设计手册第一册:公差

形位公差的标注: 形位公差框格中,不仅要表达形位公差的特征项目、基准代号和其他符号,还要正确给出公差带的大小、形状等内容。 1.形位公差框格: 形位公差框格由两个框格或多个格框组成,框格中的主要内容从左到右按…...

如何把图片保存成16位png格式?

在进行图像处理的过程中,见过8位和24位的图片,然而还没见过16位的,其实也有,比如对于灰度图,就是相当于利用65535个灰度级进行灰度存储。而8位就是256个位置存储。相当于就是0-255. 今天尝试了巨久,用pyth…...

vue 关闭页面前释放资源

mounted() {window.addEventListener(beforeunload, e > this.handleBeforeUnload(e)) }beforeDestroy() {//监听-关闭页面的时候释放资源window.removeEventListener(beforeunload, e > this.handleBeforeUnload(e))},methods: {handleBeforeUnload(event){event.preven…...

堡垒机,日志审计系统,行为管理,漏洞扫描的作用

堡垒机 日志审计 行为管理 漏洞扫描 堡垒机和防火墙的区别主要体现在以下几个方面: 功能不同:堡垒机主要用于管理和控制服务器访问权限,提供安全的登录通道和权限控制,还可以记录并监控用户对服务器的所有操作,为后…...

JVM学习-自定义类加载器

为什么要自定义类加载器 隔离加载类 在某些框架内进行中间件与应用的模块隔离,把类加载到不同的环境,如Tomcat这类Web应用服务器,内部自定义了好几种类加载器,用于隔离同一个Web应用服务器上的不同应用程序 修改类加载的方式 …...

NDIS Filter开发-OID 请求

NDIS 定义对象标识符 (OID) 值来标识适配器参数,其中包括操作参数,例如设备特征、可配置的设置和统计信息。 Filter驱动程序可以查询或设置基础驱动程序的操作参数,或过滤/覆盖顶层驱动程序的 OID 请求。 NDIS 还为 NDIS 6.1 及更高版本的Fi…...

软考 系统架构设计师之考试感悟2

接前一篇文章:软考 系统架构设计师之考试感悟 今天是2024年5月25号,是个人第二次参加软考系统架构师考试的正日子。和上次一样,考了一天,身心俱疲。天是阴的,心是沉的,感觉比上一次更加沉重。仍然有诸多感悟…...

[学习笔记](b站视频)PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】(ing)

视频来源:PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】 前面P1-P5属于环境安装,略过。 5-6.Pytorch加载数据初认识 数据文件: hymenoptera_data # read_data.py文件from torch.utils.data import Dataset …...

Flutter开发效率提升1000%,Flutter Quick教程之定义构造参数和State成员变量

一个Flutter页面,可以定义页面构造参数和State成员变量。所谓页面构造参数,就是当前页面构造函数里面的参数。 比如下面代码,a就是构造参数,a1就是State成员变量。 class Testpage extends StatefulWidget {String a;const Test…...

R语言数据分析-xgboost模型预测

XGBoost模型预测的主要大致思路: 1. 数据准备 首先,需要准备数据。这包括数据的读取、预处理和分割。数据应该包括特征和目标变量。 步骤: 读取数据:从CSV文件或其他数据源读取数据。数据清理:处理缺失值、异常值等…...

使用redis的setnx实现分布式锁

在Redis中,SETNX 是 “Set If Not Exists”(如果不存在,则设置)的缩写。这是一个原子操作,用于设置一个键的值,前提是这个键不存在。如果键已经存在,.则不会执行任何操作。 封装方法trylock,用…...

LangChain进行文本摘要 总结

利用LangChain进行文本摘要的详细总结 LangChain是一个强大的工具,可以帮助您使用大型语言模型(LLM)来总结多个文档的内容。以下是一个详细指南,介绍如何使用LangChain进行文本摘要,包括使用文档加载器、三种常见的摘…...

政安晨【零基础玩转各类开源AI项目】:解析开源项目的论文:Physical Non-inertial Poser (PNP)

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: 零基础玩转各类开源AI项目 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 本文解析的原始论文为:https://arxiv.org/…...

【机器学习】基于OpenCV和TensorFlow的MobileNetV2模型的物种识别与个体相似度分析

在计算机视觉领域,物种识别和图像相似度比较是两个重要的研究方向。本文通过结合深度学习和图像处理技术,基于OpenCV和TensorFlow的MobileNetV2的预训练模型模,实现物种识别和个体相似度分析。本文详细介绍该实验过程并提供相关代码。 一、名…...

Java中如何实现Excel跨工作表数据复制

本文介绍了如何在Java程序中有效地复制Excel工作表中的数据。许多Java开发人员需要将数据从一个工作表复制到另一个工作表。本文提供了一个代码示例来帮助您解决这个问题。核心是如何在Java中有效地复制Excel工作表中特定区域的数据。下面的例子是使用Java库(具体的…...

11.0592MHz晶振在51单片机串口通信中的优势解析

1. 为什么11.0592MHz晶振成为单片机工程师的首选在嵌入式系统设计中,晶振的选择往往决定了整个系统的稳定性和精度。作为一名从事单片机开发多年的工程师,我发现11.0592MHz的晶振在51单片机项目中出现的频率异常高。这绝非偶然,而是由一系列精…...

DNS负载均衡的5个认知误区:为什么你的轮询总不生效?(附排查指南)

DNS负载均衡的5个认知误区:为什么你的轮询总不生效?(附排查指南) 当我们在讨论DNS负载均衡时,常常会遇到一些根深蒂固的误解。这些误解不仅会影响系统设计决策,还可能导致运维人员在排查问题时走弯路。本文…...

Qwen3.5-2B部署实战:端侧轻量化多模态模型一键镜像教程

Qwen3.5-2B部署实战:端侧轻量化多模态模型一键镜像教程 1. 模型简介 Qwen3.5-2B是阿里云推出的轻量化多模态基础模型,属于Qwen3.5系列的小参数版本(20亿参数)。这个模型专为低功耗、低门槛部署场景设计,特别适合端侧…...

深入S32K3XX以太网内部:用逻辑分析仪抓取MII时序,图解数据收发全过程

深入S32K3XX以太网内部:用逻辑分析仪抓取MII时序,图解数据收发全过程 在嵌入式系统开发中,以太网通信的底层实现往往像一个黑盒子——我们配置好寄存器,数据就神奇地传输了。但对于真正追求技术深度的开发者来说,理解信…...

原创:国家级高端装备卡脖子技术攻关:五轴联动数控系统核心突破方案

国家级高端装备卡脖子技术攻关:五轴联动数控系统核心突破方案 文章摘要 本项目隶属国家高档数控机床与基础制造装备重大专项(04专项),聚焦高端车铣复合车床五轴联动数控系统这一首号卡脖子核心技术,针对该领域海外技术…...

stealth.js全解析:40+反检测补丁的配置与优化技巧

Stealth.js全解析:40反检测补丁的配置与优化技巧 在当今的Web自动化领域,反检测技术已成为开发者必须掌握的核心技能之一。无论是数据采集、自动化测试还是其他需要模拟真实用户行为的场景,如何让脚本"隐形"都是决定成败的关键因素…...

为什么92%的FastAPI流式AI项目在高并发下崩溃?深度解析event loop争用、response.body迭代器生命周期与uvicorn worker模型冲突

第一章:FastAPI 2.0流式AI响应的高并发失效现象全景透视当FastAPI 2.0被用于承载大语言模型(LLM)的SSE(Server-Sent Events)或分块Transfer-Encoding: chunked流式响应时,大量并发请求下常出现连接提前终止…...

3天掌握MediaPipe:从零开始构建实时AI应用的终极指南

3天掌握MediaPipe:从零开始构建实时AI应用的终极指南 【免费下载链接】mediapipe Cross-platform, customizable ML solutions for live and streaming media. 项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe 想快速上手实时AI应用开发却不知…...

自建轻量CI_CD:GitHub Actions + Docker + 自动版本号 + 自动回滚 实战教程

自建轻量CI/CD:GitHub Actions Docker 自动版本号 自动回滚 实战教程 🏷️ 标签:CI/CD、GitHub Actions、Docker、自动化部署、自动版本号、自动回滚、DevOps 📌 阅读指南:本文手把手带你搭建一套轻量、免费、稳定的…...