当前位置: 首页 > article >正文

Ubuntu 22.04安装Rust编译环境并且测试

我参考的博客是《Rust使用国内Crates 源、 rustup源 |字节跳动新的 Rust 镜像源以及安装rust》
lsb_release -r看到操作系统版本是22.04,uname -r看到内核版本是uname -r
在这里插入图片描述

sudo apt install -y gcc先安装gcc,要是结果给我的一样的话,那么就是安装好了gcc
在这里插入图片描述

sudo vim /etc/profile把下边的内容填写进去:

export RUSTUP_DIST_SERVER="https://rsproxy.cn"
export RUSTUP_UPDATE_ROOT="https://rsproxy.cn/rustup"

sudo tail -n 2 /etc/profile看一下最后2行的内容,source /etc/profile使环境变量生效。

在这里插入图片描述

环境变量RUSTUP_DIST_SERVER用于更新toolchainRUSTUP_UPDATE_ROOT用于更新rustup。下边有几个备用选项。

# 清华大学
RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup

# 中国科学技术大学
RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

# 上海交通大学
RUSTUP_DIST_SERVER=https://mirrors.sjtug.sjtu.edu.cn/rust-static/

sudo curl --proto '=https' --tlsv1.2 -sSf https://rsproxy.cn/rustup-init.sh | sh进行安装。
在这里插入图片描述

完成之后,如下图:
在这里插入图片描述

source "$HOME/.cargo/env"使环境变量生效。
在这里插入图片描述

sudo vim ~/.cargo/config设置一下crates.io 镜像,把下边的内容填进去:

[source.crates-io]
replace-with = 'rsproxy-sparse'
[source.rsproxy]
registry = "https://rsproxy.cn/crates.io-index"
[source.rsproxy-sparse]
registry = "sparse+https://rsproxy.cn/index/"
[registries.rsproxy]
index = "https://rsproxy.cn/crates.io-index"
[net]
git-fetch-with-cli = true

sudo cat ~/.cargo/config可以看到填入的信息。

在这里插入图片描述

cargo new rustTest创建二进制程序,cd rustTest进入源代码目录下。
在这里插入图片描述

ls -lR看一下当前目录下的内容。
在这里插入图片描述

可以看到当前目录下有一个Cargo.toml文件和src目录,而src目录下有main.rs文件,就是相当于如下所示:

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

Cargo.toml的最后填上内容rand = "0.6.5",最后Cargo.toml里边的内容如下:

[package]
name = "rustTest"
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"

在这里插入图片描述
sudo 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);
}

在这里插入图片描述
然后在当前rustTest目录下,使用cargo run进行编译运行,这次运行的输出内容是生成在0(包括)到100(包括)之间的数:84
完成测试。
此文章为11月Day 18学习笔记,内容来源于极客时间《Rust 语言从入门到实战》。


http://www.kler.cn/news/135898.html

相关文章:

  • 【运维篇】Redis常见运维命令详解
  • 数据处理生产环境_利用MurmurHash3算法在Spark和Scala中生成随机颜色
  • 今天遇到Windows 10里安装的Ubuntu(WSL)的缺点
  • 搜索引擎ElasticSearch分布式搜索和分析引擎学习,SpringBoot整合ES个人心得
  • 【Linux 源码阅读记录】设备树解析 of 相关代码
  • idea显示pom.xml文件漂黄警告 Dependency maven:xxx:xxx is vulnerable
  • Jenkins自动化部署(虚拟机部署)
  • openssl + 3DES开发实例(linux)
  • Android Studio常见问题
  • redis 非关系型数据库
  • 每天一道算法题(七)——求一个数组中最多能存储多少雨水(困难)
  • 车牌识别 支持12种中文车牌类型 车牌数据集下载
  • 多参数训练Isolation Forest
  • Python---函数的嵌套(一个函数里面又调用了另外一个函数)
  • Asp.net MVC Api项目搭建
  • GitHub如何删除仓库
  • 支付宝沙箱支付
  • Unity中Shader矩阵的逆矩阵
  • openfeign、nacos获取接口提供方真实IP
  • new/delete 和malloc/free的区别
  • uni-app 使用vscode开发uni-app
  • 接口自动化和UI自动化的区别
  • 实现CAS自旋锁
  • 工程项目立项需要做哪些准备?
  • 视频转码方法:多种格式视频批量转FLV视频的技巧
  • 【Linux网络】详解使用http和ftp搭建yum仓库,以及yum网络源优化
  • git常用命令和参数有哪些?【git看这一篇就够了】
  • 【开题报告】基于SpringBoot的网上摄影工作室的设计与实现
  • 前端面试考核点【更持续新中】
  • 根据nginx日志统计页面访问次数