Home
Posts
Categories
Tags
Series
About
第一章 Rust 基础知识
postedOn: 2024-4-21   updatedOn: 2024-4-21   includedIn: Software
wordsCount: 229   readingTime: 2 mins   viewers:

1.1 安装&&更新 1.2 编译器与包管理工具及开发环境搭建 1.3 获取 Rust 库、换源

安装与更新

Rust 安装比较简单,依据官网进行安装即可。

本学习笔记使用 Windows11 进行。因此选择下载=RUSTUP-INIT.EXE(64 位)=。 下载成功后,双击运行,按照提示进行安装即可。查看安装是否成功。

  • rustc -V
  • rustup show
  • cargo –version

rustup 基本使用

升级

rustup update
更新 rust
rustup install stable|nightly
安装指定 rust 版本
  • stable: 稳定版
  • nightly: 夜版,最新版本,每天构建的

版本管理

rustup default nightly
设置非=stable=为默认版本

卸载

  • rustup self uninstall

添加组件

  • rustup component add

编译器与包管理工具记忆环境搭建

编译器 rustc

rustc -V
查看版本
rustc -o out source.rs
编译生成二进制文件
rustc –crate-type lib source.rs
编译生产库文件

开发环境

VSCode
开发工具
  • rust-analyzer: lsp 插件
  • Error Lens: 错误提示

cargo 包管理工具

cargo 底层还是使用 rustc 进行编译

基本命令

cargo new project-name
创建一个二进制项目
cargo new project-name –lib
创建一个库文件项目
cargo build
构建项目
cargo build –release
生成优化的可执行文件
cargo check
快速检测代码语法
cargo run
运行
cargo test
测试

项目结构

  • 项目

配置文件 Cargo.toml

  • package
    • name: 项目名称
    • version: 版本
    • edition: rust 版本
  • dependencies
    • 安装依赖项
    • 构建依赖
    • 开发依赖
    • 工作目录依赖,同时有多个项目或库

获取 Rust 库以及换源

crate 库

crate
Rust 第三方库

添加库

修改 Cargo.toml 文件
找到库然后手动添加
cargo add crate
使用 cargo 工具添加

Cargo 插件 cargo-edit

cargo install cargo-edit
安装

添加库

cargo add dependency_name
添加 crate
cargo add dependency_name@version
添加指定版本的
cargo add –dev name
添加开发依赖
cargo add –build name
添加构建依赖

删除库

cargo remove name
删除库

换源

这里换成的是字节跳动的源 RsProxy

切换 rustup 的源

RUSTUP_DIST_SERVER
添加到环境变量
RUSTUP_UPDATE_ROOT
添加到环境变量
1
2
       export RUSTUP_DIST_SERVER="https://rsproxy.cn"
       export RUSTUP_UPDATE_ROOT="https://rsproxy.cn/rustup"

设置 crate 源

  [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
  • 文件路径

    windows : C:\Users\<user>\.cargo\config

    Linux : $HOME\.cargo\config

小结

Rust 第一章到这里就要结束了,基本介绍了如何安装 rust 以及一些基本的配置.

mcge
白马夜频惊.三更霸陵雪.
Table of Contents
Related Posts
tsconfig 核心配置文件详解
基本选项 compilerOptions include exclude extends compilerOptions 编译器选项,tsc 编译代码时会按照配置选项进行编译。 allowUnreachableCode 不报告执行不到的代码错误 undefined 默认,提供建议作为警告 true 无法访问的代码将被忽略 false 引发有关无法访问代码的错误 allowUnusedLabels 允许未使用的标签 undefined 默认,提供建议警告 true 未使用的标签将被忽略 false 引发有关未使用标签的错误 alwaysStrict 始终严格模式,确保在 ECMAScript 严格模式下解析文件 并为每个源文件使用 use strict exactOptionalPropertyTypes 确切的可选属性类型 启用,TypeScript 处理属性或 type interfaces 具有?前缀的属性有更严格的规则 noUnusedLocals 报告未使用的变量 noUnusedParameters 报告未使用的参数 noFallthroughCasesInSwitch 防止 switch 语句贯穿 noEmit 禁止生成 js 文件 strict 严格模式 lib 库选项 编译时依赖的库 target 目标选项 tsc 编译代码时以哪个版本进行编译 module 指定生成哪个模块系统代码 None CommonJS AMD System UMD ES6 ES2015 ES2020 ES2022 ESNext rootDir 编译的文件目录 outDir tsc 编译后输出的文件目录 moduleResolution 模块解析策略 classic node10 node16 nodenext bundler node 采用 node 模块解析的方式查找文件 [从内往外查找 import 引入的文件] classic 采用 classic 模块解析的方式查找文件[从外往内查找 import 引入的文件] resolveJsonModule 是否支持引入 json 文件 allowJs 允许 JS 文件引入 checkJs 检查 JS 与 allowJs 配合使用 checkJs 启用时,js 文件会报告错误,相当于在 js 文件顶部包含 @ts-check 详细的编译器选项compilerOptions
2024-6-8
learnning-typescript
本学习文档时学习慕课网的 TS+React18 高仿 AntD 欢迎来到 TypeScript 任何可以使用 JavaScript 来编写的=优秀=的大型应用,最终会由 TypeScript 编写。 – 韩骏,2019 编程语言的类型 动态类型 静态类型 TypeScript 究竟是什么 JavaScript 超集 静态类型风格的类型系统 从 es6 到 es14 甚至是 esnext 的语法支持 兼容浏览器、系统、服务器 开源 为什么要使用 TypeScript 程序更容易理解 效率更高 更少的错误 编译期间能够发现大部分错误 好的包容性 安装 TypeScript 环境 windows11 vim9 nodejs20^ pnpm 安装 1 pnpm add -g typescript 数据类型 JavaScript 数据类型 原始类型
2024-5-26
idea_custom_method_annotation
IDEA 自定义方法注释 使用快捷键=Ctrl+Alt+S=快捷键打开设置界面 点击 Editor->Live Templates 将 Tab 改成 Enter,点击 + 号,添加一个 Template Group,随便输入一个名称 新建之后选中,再次点击+号,新建一个 Live Template 给 Abbreviation 输入一个快捷键,比如**,Description 是描述,Template Text 是模板 Template Text 内容 模板不能以/开头,不然无法获取参数和方法返回类型 ** * @Description: TODO $params$ $return$ * @Author: $user$ $date$ $time$ * @Version 1.0 */ 编辑变量 params 代表方法的参数,这里将会统一对齐 1 groovyScript("if(\"${_1}\".length() == 2) {return '';} else {def result=''; def params=\"${_1}\".
2024-2-28
什么是.NET or .NET Framework or .NET Core?
什么是.NET .NET 是一个*免费的跨平台开放源代码*开发平台,用于生成多种类型的应用程序。 .NET 应用和库是通过源代码和项目文件,使用.NET CLI 或集成开发环境生成的。 什么是.NET
2024-1-13