rust 卸载重新安装 安装

原因:接触区块链时报错

linking with `x86_64-w64-mingw32-gcc` failed: exit code: 1

Rust编译需要C++环境,如果你没有,Rust也能安装成功,只是无法编译代码

C++的编译工具有两个,一个是msvc,也就是visual studio code会安装的,另一个是mingw。

之前我安装的是mingwmingwmingw。

出现上述报错一般是编译器的问题,msvc和gnu两个是不兼容的编译器,用了msvc编译的库,那么这个库也只能引用msvc编译的依赖库;gnu也是一样。
既然在windows下编写,仍然建议使用msvc编译器。

卸载Rust

在之前的命令行窗口中继续输入

rustup self uninstall

 问题:could not remove 'rustup_home' directory: 'C:\Users\Tony\.rustup': Access is denied 原因:rust程序在后台还在运行。 解决:任务管理器结束任务。再去卸载

重新执行安装

再次安装时,选择默认的 x86_64-pc-windows-msvc,不修改为 x86_64-pc-windows-gnu 了。别的参数可以按照自己的需要去调整。
装完后,再创建hello项目编译运行,成功。

rustup:Rust 工具链管理器,rustup 是 Rust 的工具链管理器,它负责安装、更新和管理 Rust 工具链。
rustc:Rust 编译器,rustc 是 Rust 的编译器,它将 Rust 源代码编译成可执行的机器代码。rustc 遵循 Rust 语言的规则和约定,确保生成的代码既安全又高效。
cargo:Rust 的包管理器和构建工具,cargo 是 Rust 的包管理器和构建工具,它简化了 Rust 项目的创建、依赖管理和构建过程。

然后。。。。。卸载后用 msvc 安装rust又又报错,好像我vscode是2015版本,版本有点低不想再弄了....

rustc cargo rustu   的关系:

  • rustc是编译器
  • cargo是用rust写的一个包管理工具(可以直接在http://crates.io上搜到并当作依赖来用) 最后cargo build这种,最后编译还是用的rustc

  • rustup是工具链管理,安装哪个版本的rust和常用组件

  • 类比一下:python pip pyenv

重新来吧:先用mingw的c++编译器 安装 rust

卸载:

.rust 文件已经被删除

自定义一下安装路径吧,要不然又要安装在c盘


 

在后续安装中出现:

 为了安装顺利,要不然动不动卡:配置rustup镜像(非必须)

清华镜像 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

使用帮助 -> rustup ->使用这个配置到环境变量里

RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup

配置crates镜像(非必须)

或者

查看c++编译器:mingw

点击安装工具

安装成功:

运行编译rust.rs依然报错

决定删除vs2015 重新下载vs2019 用 msvc 安装rust

右键点击

rust包路径确实是在环境变量定义的位置

删除vs2015 下载vs2019

卸载Visual Studio 2015并安装Visual Studio 2019_vs2015升级2019-CSDN博客

我的是企业版(前公司误我啊,之前是vs2019的)

删除完成后点击之前vs2015图标:就显示

就剩下一个vs安装程序

好的卸载完成

彻底删除Visual Studio

彻底删除Visual Studio 2022_微软提供的开源卸载工具清理msi、msu等残留插件-CSDN博客

(1)通过微软提供的开源卸载工具VisualStudioUninstaller可以清理MSI、MSU等残留插件

https://github.com/Microsoft/VisualStudioUninstaller/releases

下载TotalUninstaller后解压,右键以管理员权限运行.exe文件

(2)删除安装目录

C:\Program Files\Microsoft Visual Studio

C:\Program Files(x86)\Microsoft Visual Studio

删除整个Microsoft Visual Studio文件夹:shift+delete

(3)删除注册表
win+R

输入路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio(唯一)

按路径找到visual studio注册表,右键删除

安装:卸载Visual Studio 2015并安装Visual Studio 2019_vs2015升级2019-CSDN博客

卸载 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/3045.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CTFshow-PWN-栈溢出(pwn44)

64位的 system(); 但是好像没"/bin/sh" 上面的办法不行了,想想办法 检查: 是 64 位程序 ida 反编译 main 函数: 跟进 ctfshow 函数: 存在栈溢出 offset:0xAh8 在前面经验的基础上,这里我们直…

Python-VBA函数之旅-issubclass函数

目录 一、issubclass函数的常见应用场景: 二、issubclass函数使用注意事项: 三、如何用好issubclass函数? 1、issubclass函数: 1-1、Python: 1-2、VBA: 2、推荐阅读: 个人主页&#xff…

Linux下载及安装OpenSSL

文章目录 前言一、OpenSSL下载二、OpenSSL安装1.上传下载好的安装包到服务器2.解压3.切换目录4.配置config5.编译6.安装7.备份旧版本OpenSSL7.创建软链接8.添加OpenSSL动态链接库9.更新库缓存10.查看OpenSSL版本验证安装是否成功 前言 一般系统会自带有OpenSSL,我们…

ubuntu 24.04 beta server NAT模式上网设置

在Ubuntu 24.04 Beta上设置网络通常涉及使用命令行工具。以下是设置静态IP地址和动态IP地址的步骤: 动态IP设置: 查找你的网络接口名称: ip a ens37是我NAT模型的一张网卡,此时是没有ip的。 下面介绍如何NAT模式下添加DHCP动态…

【数据结构与算法】:带你手搓顺序表(C/C++篇)

文章目录 一、顺序表1.1 线性表 二、顺序表2.1 概念及结构2.2 实现方法1. 顺序表的初始化2. 顺序表的销毁3. 扩容4. 尾部插入/尾部删除5. 头部插入/头部删除6. 指定位置插入/删除7. 顺序表的查找8. 顺序表元素的索引9. 顺序表元素的修改10. SeqList.c完整代码 一、顺序表 1.1 …

FL Studio21中文版值不值得下载?2024优点和缺点测评介绍

FL Studio21的优点和缺点分析如下: 优点: 功能全面: FL Studio 21提供了从音频录制、编辑到混音和母带处理的全套工具,满足音乐制作的全流程需求。内置多种虚拟乐器和效果器,覆盖了广泛的音色和风格。直观易用&#…

粒子群算法(PSO)matlab代码实现

粒子群算法(PSO)matlab代码实现 %% 清空命令行和工作区 clc clear %% 目标函数:求解函数在[0,50]区间上的最小值 f(x) x.*sin(x).*cos(2*x) - 2.*sin(3*x)3*x.*sin(4*x); %% 初始化算法参数 population50; % 粒子的数量 dimension1; …

frp 实现 http / tcp 内网穿透(穿透 wordpress )

frp 实现 http / tcp 内网穿透(穿透 wordpress ) 1. 背景简介与软件安装2. 服务端配置2.1 配置文件2.2 wordpress 配置文件2.3 frps 自启动 3.客户端配置3.1 配置文件3.2 frpc 自启动 同步发布在个人笔记frp 实现 http / tcp 内网穿透(穿透 w…

详细分析mysqlslap的基本知识 | 压力测试(附Demo)

目录 前言1. 基本知识2. 参数解读2.1 auto-generate-sql2.2 only-print2.3 iterations2.4 并发处理参数 前言 对数据库进行压力测试,对此补充这方面的详细知识点 1. 基本知识 mysqlslap 是 MySQL 自带的用于模拟数据库负载的压力测试工具 可以模拟多个客户端并发…

C++—DAY2

定义一个矩形类Rec,包含私有属性length,width,有以下成员函数: void set length(int l);//设置长度 void set width(int w); //设置宽度 int get length(); //获取长度 int get_width(); //获取宽度 void show(); //输出…

《本能》我们为什么管不住自己 - 三余书屋 3ysw.net

本能:我们为什么管不住自己 大家好,今天我们来解读一本名为《本能》的书。这本书有两位作者,第一位是特里伯纳姆,他是哈佛大学商学院的访问学者,在1997年获得哈佛大学商业经济学博士学位,也是自1997年起一…

无重复最长子串

专栏持续更新50道算法题,都是大厂高频算法题,建议关注, 一起巧‘背’算法! 文章目录 题目解法 滑动窗口总结 题目 解法 滑动窗口 采取滑动窗口的方法降低时间复杂度定义一个 map 数据结构存储 (k, v),其中 key 值为字符,value 值…

Shader for Quest 2: 自定义shader在Unity Editor中可以使用,但是在Quest 2中却不可以

GameObject segment GameObject.Find("DisplayArea_" i); MeshRenderer renderer segment.GetComponent<MeshRenderer>(); Material mat new Material(Shader.Find("Custom/MyShader")); mat.mainTexture option.Image360;上面这份代码&#x…

Qt中常用对话框

Qt中的对话框&#xff08;QDialog&#xff09;是用户交互的重要组件&#xff0c;用于向用户提供特定的信息、请求输入、或进行决策。Qt提供了多种标准对话框以及用于自定义对话框的类。以下将详细介绍几种常用对话框的基本使用、使用技巧以及注意事项&#xff0c;并附带C示例代…

vmp入门(一):android dex vmp还原和安全性论述

看了一下&#xff0c;目前市面上关于dex vmp还原就我兄弟写的这一个&#xff0c;我不得不佩服他巨强的二级制分析能力。关于dex vmp 他的大部分都写了&#xff0c;但是&#xff0c;他搞的实在是太复杂了&#xff0c;他的分析基本都是基于静态的数据流向分析&#xff0c;这种对于…

Sylar C++高性能服务器学习记录05 【线程模块-知识储备篇】

早在19年5月就在某站上看到sylar的视频了&#xff0c;一直认为这是一个非常不错的视频&#xff0c;还有幸加了sylar本人的wx&#xff0c;由于本人一直是自学编程&#xff0c;基础不扎实&#xff0c;也没有任何人的督促&#xff0c;没能坚持下去&#xff0c;每每想起倍感惋惜。恰…

FineBi中创建自定义的图表

FineBi中增加自己的自定义图表组件,比如: 的相关笔记: 1 获取有哪些BI自定义图表组件:http://localhost:8080/webroot/decision/v5/plugin/custom/component/list?_=1713667435473[{"name": "图表DEMO_EK","chartType": "amap_demo&q…

【学习】如何高效地进行集成测试

在软件开发的过程中&#xff0c;测试环节至关重要。而在这其中&#xff0c;集成测试更是保证软件质量的关键步骤之一。本文将探讨如何高效地进行集成测试&#xff0c;以确保软件的稳定性和可靠性。 一、什么是集成测试 集成测试是指在单元测试的基础上&#xff0c;将模块按照设…

Springboot 结合PDF上传到OSS

目录 一、首先注册阿里云OSS&#xff08;新用户免费使用3个月&#xff09; 二、步骤 2.1 将pdf模板上传到oos 2.2 这里有pdf地址,将读写权限设置为共工读 ​编辑 三、代码 3.1 pom.xml 3.2 配置文件 3.3 oss model 3.4 配置类(不需要修改) 3.5 将配置类放入ioc容器 3.…

libtorrent - 安装小记

文章目录 官方文档&#xff1a;libtorrent python binding http://libtorrent.org/python_binding.html 1、下载代码 建议使用&#xff1a; git clone --recurse-submodules https://github.com/arvidn/libtorrent.git如果在 github web 界面下载代码&#xff0c;build 的时候…