centos安装Rust

一条命令完成全部安装

echo "中途需要按回车键确认安装"; yum install -y gcc ;echo "export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static";echo "export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup";echo "export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static" >> /etc/profile;echo "export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup" >> /etc/profile;source  /etc/profile;curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh &&source $HOME/.cargo/env &&rustc -V &&echo "${HOME}/.cargo/config";echo "[source.crates-io]" ;echo 'registry = "https://github.com/rust-lang/crates.io-index"' ;echo "replace-with = 'ustc'";echo "[source.ustc]" ;echo 'registry = "git://mirrors.ustc.edu.cn/crates.io-index"' ;echo "[source.crates-io]" >>  ${HOME}/.cargo/config &&echo 'registry = "https://github.com/rust-lang/crates.io-index"' >>  ${HOME}/.cargo/config &&echo "replace-with = 'ustc'" >>  ${HOME}/.cargo/config &&echo "[source.ustc]" >>  ${HOME}/.cargo/config &&echo 'registry = "git://mirrors.ustc.edu.cn/crates.io-index"' >>  ${HOME}/.cargo/config

安装完成后,需要验证是否可用,请跳转到后边的: 使用Rust ,以验证

安装Rust

依赖准备

安装gcc

yum install -y gcc

换国内源下载

两条命令进行国内下载安装文件地址配置

vim /etc/profile

在最后填写如下内容

export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

使得环境变量生效

source  /etc/profile

安装

使用命令安装,中间会有阻塞等待输入,直接按回车就是默认安装

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

配置环境变量

安装完成后,需要添加环境变量,才能生效

source $HOME/.cargo/env

安装完成检查

查看版本

rustc -V
# 输出 > rustc 1.77.1 (7cf61ebde 2024-03-27)

依赖包换源

vim ${HOME}/.cargo/config 

然后输入下边的内容来设置国内依赖包下载地址

[source.crates-io]
registry = "https://github.com/rust-lang/crates.io-index"
replace-with = 'ustc'
[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

使用Rust

Hello world

vim helloworld.rs

输入内容:

fn main(){let test = "Hello, I love the world!";println!("{}",test);
}

编译运行

rustc helloworld.rs  # 编译
./helloworld # 运行编译后生成的文件

使用依赖包

创建程序

例如使用 random 的包;这需要创建一个二进制程序:

cargo new rustrandom
cd rustrandom

创建的 rustrandom 的目录结构是

.
├── Cargo.toml
└── src└── main.rs

添加包

vim Cargo.toml
在内容的最后添加:

rand = "0.6.5"

Cargo.toml

[package]
name = "rustrandom"
version = "0.1.0"
edition = "2021"# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html[dependencies]
rand = "0.6.5"

使用包

编辑 rustrandom 目录下的 src/main.rs 文件
vim src/main.rs

extern crate rand;
use rand::Rng;
fn main() {let num = rand::thread_rng().gen_range(0, 100);println!("生成在0(包括)到100(包括)之间的数:{}", num);
}

运行

cargo run
首次运行会下载安装依赖包

 cargo run  Updating `ustc` indexDownloaded autocfg v0.1.8 (registry `ustc`)Downloaded autocfg v1.2.0 (registry `ustc`)Downloaded rand_isaac v0.1.1 (registry `ustc`)Downloaded rand v0.6.5 (registry `ustc`)Downloaded rand_jitter v0.1.4 (registry `ustc`)Downloaded rand_core v0.3.1 (registry `ustc`)Downloaded libc v0.2.153 (registry `ustc`)Downloaded rand_pcg v0.1.2 (registry `ustc`)Downloaded rand_os v0.1.3 (registry `ustc`)Downloaded rand_chacha v0.1.1 (registry `ustc`)Downloaded rand_core v0.4.2 (registry `ustc`)Downloaded rand_xorshift v0.1.1 (registry `ustc`)Downloaded rand_hc v0.1.0 (registry `ustc`)Downloaded 13 crates (999.2 KB) in 1.19sCompiling autocfg v1.2.0Compiling rand_core v0.4.2Compiling autocfg v0.1.8Compiling rand_core v0.3.1Compiling libc v0.2.153Compiling rand_chacha v0.1.1Compiling rand_pcg v0.1.2Compiling rand v0.6.5Compiling rand_os v0.1.3Compiling rand_hc v0.1.0Compiling rand_xorshift v0.1.1Compiling rand_isaac v0.1.1Compiling rand_jitter v0.1.4Compiling rustrandom v0.1.0 (/root/rustrandom)Finished dev [unoptimized + debuginfo] target(s) in 4m 43sRunning `target/debug/rustrandom`
生成在0(包括)到100(包括)之间的数:27

再次运行就不会下载了。

全部命令

echo "中途需要按回车键确认安装"; yum install -y gcc ;echo "export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static";
echo "export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup";
echo "export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static" >> /etc/profile;
echo "export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup" >> /etc/profile;source  /etc/profile;curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh &&source $HOME/.cargo/env && rustc -V && echo "${HOME}/.cargo/config";echo "[source.crates-io]" ;
echo 'registry = "https://github.com/rust-lang/crates.io-index"' ;
echo "replace-with = 'ustc'";
echo "[source.ustc]" ;
echo 'registry = "git://mirrors.ustc.edu.cn/crates.io-index"' ;
echo "[source.crates-io]" >>  ${HOME}/.cargo/config &&
echo 'registry = "https://github.com/rust-lang/crates.io-index"' >>  ${HOME}/.cargo/config &&
echo "replace-with = 'ustc'" >>  ${HOME}/.cargo/config &&
echo "[source.ustc]" >>  ${HOME}/.cargo/config &&
echo 'registry = "git://mirrors.ustc.edu.cn/crates.io-index"' >>  ${HOME}/.cargo/config 

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

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

相关文章

数据如何才能供得出、流得动、用得好、还安全

众所周知,数据要素已经列入基本生产要素,同时成立国家数据局进行工作统筹。目前数据要素如何发挥其价值,全国掀起了一浪一浪的热潮。 随着国外大语言模型的袭来,国内在大语言模型领域的应用也大放异彩,与此同时&#x…

使用docker部署MongoDB数据库

最近由于工作需要搭建MongoDB数据库:将解析的车端采集的数据写入到数据库,由于MongoDB高可用、海量扩展、灵活数据的模型,因此选用MongoDB数据库;由于现公司只有服务器,因此考虑容器化部署MongoDB数据,特此…

db2 使用jdbc建立连接时,指定schema,schema不存在也会连接成功

使用db2想指定schema,使用语句如下 jdbc:db2://" hostname ":" port "/" databaseName ":currentSchema" this.databaseSchema ";"; 切记:最后的分号一定要有,否则报错。 但是此处有…

Android手势密码–设置和校验功能的实现代码

效果图如下,大家感觉不错请参考实现代码 具体代码如下所示: private void setGesturePassword() {toggleMore.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {Overridepublic void onCheckedChanged(CompoundButton button…

【linux】lsof命令使用

1. 功能 lsof list open files, 列出被进程所使用的文件名称。 2. 基础语法 3. 参数含义 参数含义-a过滤出多个选项要同时满足的文件-U仅列出UNIX-like系统的socket文件类型。-u指定用户,比如-u atiaisi,会把用户atiaisi相关的进程使用的文件列出来。…

24/04/02总结

API: bigdecima: 方法名 说明 public static BigDecimal valueof( double val) 静态获取对象 public BigDecimal add(BigDecimal val) 加法 public BigDecimal subtract(BigDecimal val…

【路径规划论文整理(1)】Path Deformation Roadmaps(附带对PRM改进算法、同伦映射的整理)

本系列主要是对精读的一些关于路径搜索论文的整理,包括了论文所拓展的其他一些算法的改进思路。 这是本系列的第一篇文章: Jaillet, Lonard & Simon, Thierry. (2008). Path Deformation Roadmaps: Compact Graphs with Useful Cycles for Motion Pl…

tomcat 常见优化方案

tomcat作为Web服务器,它的处理性能直接关系到用户体验,下面是几种常见的优化措施: 对web.xml的监视,把jsp提前编辑成Servlet。有富余物理内存的情况,加大tomcat使用的jvm的内存 服务器所能提供CPU、内存、硬盘的性能…

Spring Boot接收从前端传过来的数据常用方式以及处理的技巧

一、params 传参 参数是会拼接到url后面的请求 场景规范:url后面的key值<=3个参数的时候,使用params 传参 支持的请求方式:get(正规的是get方式)、post 都行 例如: http://localhost:8080/simpleParam?name=Tom&age=10 在postman里面的体现为 后端接收的接口…

格式化输出数据

JDK 5 新特性&#xff0c;格式化输出数据 长度不够前面补空格&#xff0c;超出长度按实际输出 System.out.printf(“格式控制部分”,表达式1,表达式2,,表达式n); 格式控制部分由格式符号、普通字符组成&#xff0c;普通字符原样输出&#xff0c;格式符号输出表达式的值 // …

Python+requests+Pytest+logging+allure+pymysql框架详解

一、框架目录结构 1)tools目录用来放公共方法存储,如发送接口以及读取测试数据的方法,响应断言 数据库断言 前置sql等方法;2)datas目录用例存储接口用例的测试数据,我是用excel来存储的数据,文件数据 图片数据等;3)testcases目录用来存放测试用例,一个python文件对应…

Python网络爬虫(一):HTML/CSS/JavaScript介绍

1 HTML语言 1.1 HTML简介 HTML指的是超文本标记语言&#xff1a;HyperText Markup Language&#xff0c;它不是一门编程语言&#xff0c;而是一种标记语言&#xff0c;即一套标记标签。HTML是纯文本类型的语言&#xff0c;使用HTML编写的网页文件也是标准的文本文件&#xff0c…

天盾网络验证源码+视频教程

最新版本为746&#xff0c;企业定制版。现在正在意义上的离线版已出来&#xff0c; 天盾746离线版不需要绑定电脑&#xff0c;提供母端&#xff0c;断网可用&#xff0c;可以理解为它是一款离线版的工具。它没有任何使用限制&#xff0c;和正版唯一的区别就是不需要连接作者服…

789. 数的范围 (二分学习)

题目链接 1.确定一个区间&#xff0c;使得目标值一定在区间中 2.找一个性质满足&#xff1a; &#xff08;1&#xff09;性质具有二段性 &#xff08;2&#xff09;答案是二段性的分界点 3.整数二分&#xff08;处理红色右端点和绿色左端点&#xff09; //代码1&#xff1a;…

Aop实现公共字段自动填充

文章目录 1、问题:2.常规冗余不利于维护操作&#xff1a;3.实现思路&#xff1a; 2、步骤&#xff1a;搭建一个简单的SpringBootMyPlus项目:表结构&#xff1a; 1. 依赖&#xff1a;2. 配置连接信息:3. 创建三层架构&#xff1a;4. 代码开发:4.1 **定义数据库操作类型枚举**4.2…

css:阴影效果box-shadow

属性 box-shadow 属性值由四个参数组成&#xff1a; 水平偏移量&#xff1a;表示阴影相对于元素的水平位置。垂直偏移量&#xff1a;表示阴影相对于元素的垂直位置。模糊度&#xff1a;表示阴影的模糊程度。颜色&#xff1a;表示阴影的颜色 示例 单个box-shadow 0px -2px 6p…

MySQL之索引详细总结

索引简介 索引是帮助MySQL高效获取数据的数据结构(有序)。在数据之外&#xff0c;数据库系统还维护着满足特定查找算法的数据结构&#xff0c;这些数据结构以某种方式引用(指向)数据&#xff0c;这样就可以在这些数据结构上实现高级查法&#xff0c;这种数据结构就是索引 为什…

基于rip环境下的MGRE综合实验

实验要求 1、R5为ISP&#xff0c;只能进行IP地址配置&#xff0c;其所有地址均配为公有IP地址。 2、&#xff08;1&#xff09;R1和R5间使用PPP的PAP认证&#xff0c;R5为主认证方。 &#xff08;2&#xff09;R2与R5之间使用ppp的CHAP认证&#xff0c;R5为主认证方。 &#…

YoloV8改进策略:Neck改进|GCNet(独家原创)|附结构图

摘要 本文使用GCNet注意力改进YoloV8,在YoloV8的Neck中加入GCNet实现涨点。改进方法简单易用&#xff0c;欢迎大家使用&#xff01; 论文:《GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond》 非局部网络&#xff08;NLNet&#xff09;通过为每个查…

洛谷 P8662 [蓝桥杯 2018 省 AB] 全球变暖

题目描述 你有一张某海域 &#xfffd;&#xfffd;NN 像素的照片&#xff0c;. 表示海洋、 # 表示陆地&#xff0c;如下所示&#xff1a; ....... .##.... .##.... ....##. ..####. ...###. .......其中 "上下左右" 四个方向上连在一起的一片陆地组成一座岛屿。例…