Rust安装(windows)

2023-05-16

windows安装Rust开发环境指南

Rust的安装非常简单,官网下载安装包双击就能安装,但是在windows上使用总是能遇到一些问题,今天我们就来踩踩坑。

设置安装路径

当你安装Rust的时候会发现没法选安装路径,对于强迫症来说,还没开始就劝退了。其实Rust是可以执行安装路径的,只不过需要通过环境变量来指定。首先说怎么操作,后面再看为什么。

Rust需要安装两个东西,一个是rustup,一个是cargo。所以你需要设置两个环境变量来分别指定他们的安装目录。

通过RUSTUP_HOME指定rustup的安装目录。
通过CARGO_HOME指定cargo的按钻过目录。

这两个环境变量既可以放在用户环境变量下,也可以放在系统环境变量下。

当我们打开Rust安装程序,选择y继续安装时,可以先把鼠标网上滚一滚,看看Rust都打印了什么信息。

在这里插入图片描述

注意看划红线的地方,如果你没设置过环境变量,那么默认会安装到C:\User\用户名\.rust下。

没有C++环境

Rust编译需要C++环境,如果你没有,Rust也能安装成功,只是无法编译代码。下面我们分几种情况来谈论。

已经安装了Rust

如果你已经在没有C++环境的情况下安装了Rust,此时你可以选择去安装visual studio code,然后就能使用Rust了。但是如果你不想安装这么个大家伙,而且你本身也不是做C/C++开发的,那么你可以使用下面的命令挽救。

rustup toolchain install stable-x86_64-pc-windows-gnu 
rustup default stable-x86_64-pc-windows-gnu

然后在你的rustup的安装目录的toolchain目录下会出现stable-x86_64-pc-windows-gnu这样一个目录,它下面有个bin目录,你需要确认下这个bin目录已经添加到path。然后就能使用Rust编译了。

关于第二个命令我们稍微解释下。C++的编译工具有两个,一个是msvc,也就是visual studio code会安装的,另一个是mingw。在没有安装visual studio code单数又需要C++环境时,我们会首选安装mingw。上面的第二行命令其实就是把Rust用到的C++工具设置为mingw。因为它默认选择的是x86_64-pc-windows-msvc。
在这里插入图片描述
如果你之前已经安装过mingw,但是安装Rust选的是默认的x86_64-pc-windows-msvc。那么其实你只需要执行上面的第二条命令就可以了,但是要注意你的mingw要加到path。

还没安装Rust

如果你还没有安装Rust,那么可以在输入y以后选择2,进入自定义安装。然后在需要输入host triple的时候输入x86_64-pc-windows-gnu,后面都默认。当再次回到上图的界面是,你会发现default host triple那一行已经变成了x86_64-pc-windows-gnu,此时再选择1进行安装。

安装完成后执行下rustup toolchain install stable,装完收工。

要验证Rust安装成功可以执行下rustup --version
要更新Rust可以执行rustup update
卸载请执行rustup self uninstall
关于rustup命令更多内容,可以看rustup官方文档。

IDE

Rust并没有专用的IDE,推荐使用vscode,安装下Rust插件,有只能提示和文档,还是蛮爽的。
在这里插入图片描述
另外你用vscode打开.rs文件时会提示你安装Rust扩展,直接点安装就完了,装完就可以爽了。再奉送一个vscode小技巧,如果你习惯用命令行的话,输入code .就能打开vscode并且已打开当前目录。

不知道有没有人好奇我的vscode的毛玻璃效果,它是Vibrancy这个插件,不过只能用于vscode默认的黑色主题。

最后再奉上一个例子,是力扣题库的第一题:两数之和。需要一点基础,刷题其实也是快速熟悉一门语言语法比较好的方式。

use std::collections::HashMap;

fn main() {
    let res = tow_sum(vec![3,2,4], 6);
    println!("{:?}", res);
}

fn tow_sum(nums:Vec<i32>, target: i32) -> Vec<i32> {
    let mut map = HashMap::new();
    for (i,v) in nums.iter().enumerate() {
        let rem = target - v;
        if let Some(j) = map.get(&rem) {
            return vec![i as i32,*j];
        }
        map.insert(v, i as i32);
    }
    vec![]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rust安装(windows) 的相关文章

随机推荐

  • 【Pytorch】加载torchvision中预训练好的模型并修改默认下载路径(使用models.__dict__[model_name]()读取)

    说明 使用torchvision model加载预训练好的模型时 xff0c 发现默认下载路径在系统盘下面的用户目录下 xff08 这个你执行的时候就会发现 xff09 xff0c 即C 用户名 cache torch checkpoint
  • 【Pytorch】tensor索引另一个tensor(tensor[tensor])

    说明 最近在使用pytorch中tensor的时候 xff0c 遇到了需要使用tensor1 tensor2 的情况 xff0c 发现了这篇博客 xff0c 他从代码的角度解释了其工作原理 xff0c 这里我用图示的方式解释tensor类型
  • 【deepstream】deepstream调用opencv(c与c++联合编译)

    目的 在deepstream项目中调用opencv库 xff0c 丰富deepstream功能 xff08 如往deepstream加入kalman filter实现跟踪 xff09 操作环境 Ubuntu 18 04Qt Creatot
  • pycharm不能导入不同文件夹下的自定义模块

    文件目录结构如下所示 xff1a span class token operator span A1 span class token operator span span class token operator span B1 span
  • 【力扣】654. 最大二叉树

    题目概述 原题链接 相关节点定义 xff1a span class token comment Definition for a binary tree node struct TreeNode int val TreeNode left
  • 【力扣】114. 二叉树展开为链表

    题目概述 原题链接 树定义如下 xff1a span class token comment Definition for a binary tree node struct TreeNode int val TreeNode left T
  • 【力扣】725. 分隔链表

    题目概述 原题链接 链表定义如下 xff1a span class token comment Definition for singly linked list struct ListNode int val ListNode next
  • Angular应用开发中遇到的问题

    记录在开发Angular应用时遇到的问题以及解决方案 问题 3 前提 xff1a 在Angular应用的组件中使用响应式表单进行数据校验 xff0c 使用FormBuilder服务的 group 方法来构建一组FormControl实例 需
  • 浏览器插件解决跨域问题

    浏览器插件解决跨域问题 在前端进行调试时 xff0c 经常会遇到CORS问题 xff0c 在调试时 xff0c 可暂时使用浏览器插件解决跨域问题 浏览器 xff1a Microsoft Edge 插件搜索截图如下 xff1a 插件开启后 x
  • 洛谷P1591 阶乘数码(C语言)简单易懂

    题目描述 求 n n 中某个数码出现的次数 输入格式 第一行为 t t leq 10 t t 10 xff0c 表示数据组数 接下来 t 行 xff0c 每行一个正整数 n n leq 1000 n n 1000 和数码 aa 输出格式 对
  • 将java项目发布到maven中央仓库(踩坑大全)

    前言 xff1a 第一次将构件发布到中央仓库 xff0c 真的不是一件轻松的事情 xff0c 网络上有很多其他文章大都不会把坑帮你描述清楚 所以觉得非常有必要把些步骤记下来 xff0c 让大家少走点弯路 一 maven中央仓库简介 相关内容
  • IOS-----手动创建Main界面

    1 删除info plist中的Main设置 2 创建MainViewController h 和MainViewController m xff08 1 xff09 布局界面 xff1a UIViewController instance
  • 【转载+修改】通过ssh 转发 X 图形界面

    转载自 xff1a http linux chinaitlab com administer 742586 html 过程精简如下 xff1a 1 配置你要链接到的机器的sshd 在 etc ssh sshd config 中将 Allow
  • [已解决]IDEA各文件类变成灰色的处理方法

    这是我遇到的问题 xff0c 创建好一个工程后 xff0c 各文件类变成了灰色 大概总结网上所说的的原因和处理方法 xff0c 可能是由于pom xml没有成功被解析 解决方法一 xff1a 右键点击这个pom文件 xff0c 选择将其添加
  • ubuntu安装opencv的正确方法

    本文介绍的是如何安装ubuntu下C 43 43 接口的opencv 1 安装准备 xff1a 1 1安装cmake sudo apt get install cmake 1 2依赖环境 sudo apt get install build
  • Ubuntu16.04升级 Ubuntu18.04

    Ubuntu16 04升级 Ubuntu18 04 1 更新资源 sudo apt get update sudo apt get upgrade sudo apt dist upgrade 2 安装update manager core
  • C++那些细节--typedef关键字

    一 简介 关于typedef关键字 xff0c 以前刚刚学C语言的时候 xff0c 用它来重定义结构体别名 之后的话就是在用函数指针的时候用过一些 xff0c 然而并不知道这个还有什么用处 今天花点时间总结一下typedef的细节 在计算机
  • python图片识别之tesseract

    经过两个下午的尝试 xff0c 终于搞出来了 xff1b 特记录下来备忘 xff1b 首先来看python代码识别图片 xff0c 这一段较为简单 xff1b span class token keyword from span PIL s
  • 游戏设计流失点总结

    xff08 1 xff09 直接彻底玩不懂 比如我之前的很多游戏 xff0c 玩家不知道怎么玩的挫败感会直接让ta去寻找更容易理解游戏 xff08 2 xff09 文字量太大 xff0c 懒得去学 有些游戏虽然有教程 xff0c 但是是长达
  • Rust安装(windows)

    windows安装Rust开发环境指南 Rust的安装非常简单 xff0c 官网下载安装包双击就能安装 xff0c 但是在windows上使用总是能遇到一些问题 xff0c 今天我们就来踩踩坑 设置安装路径 当你安装Rust的时候会发现没法