centos安装Rust

一条命令完成全部安装

bash 复制代码
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

bash 复制代码
yum install -y gcc

换国内源下载

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

bash 复制代码
vim /etc/profile

在最后填写如下内容

bash 复制代码
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

使得环境变量生效

bash 复制代码
source  /etc/profile

安装

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

bash 复制代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

配置环境变量

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

bash 复制代码
source $HOME/.cargo/env

安装完成检查

查看版本

bash 复制代码
rustc -V
# 输出 > rustc 1.77.1 (7cf61ebde 2024-03-27)

依赖包换源

bash 复制代码
vim ${HOME}/.cargo/config 

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

bash 复制代码
[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

bash 复制代码
vim helloworld.rs

输入内容:

rust 复制代码
fn main(){
        let test = "Hello, I love the world!";
        println!("{}",test);
}

编译运行

bash 复制代码
rustc helloworld.rs  # 编译
./helloworld # 运行编译后生成的文件

使用依赖包

创建程序

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

bash 复制代码
cargo new rustrandom
cd rustrandom

创建的 rustrandom 的目录结构是

bash 复制代码
.
├── Cargo.toml
└── src
    └── main.rs

添加包

vim Cargo.toml

在内容的最后添加:

bash 复制代码
rand = "0.6.5"

Cargo.toml

bash 复制代码
[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

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

运行

cargo run

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

bash 复制代码
 cargo run  
    Updating `ustc` index
  Downloaded 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.19s
   Compiling autocfg v1.2.0
   Compiling rand_core v0.4.2
   Compiling autocfg v0.1.8
   Compiling rand_core v0.3.1
   Compiling libc v0.2.153
   Compiling rand_chacha v0.1.1
   Compiling rand_pcg v0.1.2
   Compiling rand v0.6.5
   Compiling rand_os v0.1.3
   Compiling rand_hc v0.1.0
   Compiling rand_xorshift v0.1.1
   Compiling rand_isaac v0.1.1
   Compiling rand_jitter v0.1.4
   Compiling rustrandom v0.1.0 (/root/rustrandom)
    Finished dev [unoptimized + debuginfo] target(s) in 4m 43s
     Running `target/debug/rustrandom`
生成在0(包括)到100(包括)之间的数:27

再次运行就不会下载了。

全部命令

bash 复制代码
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 
相关推荐
荒Huang3 分钟前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
许野平2 小时前
Rust: 利用 chrono 库实现日期和字符串互相转换
开发语言·后端·rust·字符串·转换·日期·chrono
hjjdebug2 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯2 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
斑布斑布2 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
Spring_java_gg2 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻2 小时前
Linux:认识文件系统
linux·运维·服务器
会掉头发3 小时前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★3 小时前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器