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 
相关推荐
每天瞎忙的农民工2 分钟前
Ubuntu 24 安装npm22
linux·运维·ubuntu·npm
Coding_Doggy11 分钟前
服务器迁移 | psql大批量数据以及navicat重新连接、conda 环境迁移
linux·数据库·人工智能
j_xxx404_17 分钟前
Linux:进程控制(创建/终止/等待/获取退出信息/多进程)
linux·运维·服务器
yuluo_YX19 分钟前
Alias for Linux/Mac
linux·elasticsearch·macos
冉佳驹27 分钟前
Linux ——— 磁盘存储原理与文件系统工作机制
linux·磁盘·硬链接·inode·软链接·磁盘线性化·目录的本质
BUG_MeDe30 分钟前
LINUX MTU/MSS(1500 1460等)的一些理解
linux·运维·服务器
风流倜傥唐伯虎30 分钟前
Windows 版 Docker 的 Linux 环境(docker-desktop)与 builder-jammy-base:latest 镜像核心区别
linux·docker·容器
roamingcode34 分钟前
我是如何 Vibe Coding,将 AI CLI 工具从 Node.js 迁移到 Rust 并成功发布的
人工智能·rust·node.js·github·claude·github copilot
A懿轩A1 小时前
【Maven 构建工具】Maven 依赖管理详解:坐标、传递、作用域与依赖冲突解决(一篇搞懂)
java·linux·maven
初恋叫萱萱2 小时前
构建高性能生成式AI应用:基于Rust Axum与蓝耘DeepSeek-V3.2大模型服务的全栈开发实战
开发语言·人工智能·rust