2023-09-23 Windows系统rust开发环境配置真经

Windows系统rust开发环境配置真经

  • 前言
  • 一、配置C编译链和VsCode
  • 二、安装rust编译工具
  • 三、配置VsCode
    • 一. 安装rust-analyzer插件
    • 二. 安装Error Lens插件
    • 三. 安装Even Better TOML插件
    • 四. 配置 launch.json
    • 五. 配置 tasks.json
    • 六. 配置 Cargo.toml
  • 总结


前言

有了配置C语言环境的经验,配置rust简直不要太容易, … 直到面对cargo以及代码调试.

如果0基础学习编程, 先别挑战boss, 还是先把C搞好.


一、配置C编译链和VsCode

我有大乘配置C工具链真经一卷,

可渡有缘人达成编码自由,

不堕地狱,

不入轮回,

不砸电脑,

不毁键盘,

汝可自此取之: C 语言编程核心突破

环境配置皆可免费查看,

配合2022-03-30 VsCode中使用clangd插件的各种设置 效果更佳.

这是配置rust环境的第一步, 没有C环境, 不行.

二、安装rust编译工具

按上步配置完C工具链后, 你应该完成msys2资源管理系统安装以及VsCode的基本配置了,

打开msys64终端, 输入:

$ pacman -S mingw-w64-clang-x86_64-rust

安装即可.

打开Windows终端, 键入:

C:\Users\Lhb>rustc -V

看到类似, 根据版本不同略有变化

rustc 1.71.1 (eb26296b5 2023-08-03) (Rev2, Built by MSYS2 project)

就成功了.

三、配置VsCode

这个比较难, 我摸索了半天搞定的:

先在你的C盘以外的盘中, 新建一个文件夹, 比如 learnRust, 然后在菜单栏: 文件: 打开文件夹: 打开这个文件夹.

一般会有是否信任文件夹选项, 选择信任.

此时文件夹下空空如也, 没事, 咱们一步一步搞.

2023-09-23 Windows系统rust开发环境配置真经_第1张图片

一. 安装rust-analyzer插件

这个是rust官方推荐的语言辅助插件, 类似于Clangd, 就是稍微有点慢, 毕竟rust过于复杂.

如图, 在vscode扩展选项卡搜索rust-analyzer, 并安装.
2023-09-23 Windows系统rust开发环境配置真经_第2张图片

二. 安装Error Lens插件

这个是用于显示错误的插件, 如果是随手编写的代码, 可能得到满屏的红色警示.

安装方法, 如法炮制,
2023-09-23 Windows系统rust开发环境配置真经_第3张图片
这个插件是所有语言通用, 看看C语言配合clang-tidy的效果:
2023-09-23 Windows系统rust开发环境配置真经_第4张图片
rust效果更惊人, 自己去体会吧.

三. 安装Even Better TOML插件

这个插件是用来编写cargotoml配置文件的, 是的, 学习rust你必须掌握cargo, 类似C/C++make, 至少能新建项目, 编译项目

安装同上
2023-09-23 Windows系统rust开发环境配置真经_第5张图片
效果:

2023-09-23 Windows系统rust开发环境配置真经_第6张图片

四. 配置 launch.json

如果你学习了C的VSCode环境配置, 这里就比较简单:

默认你已经安装了CodeLLDB代码调试插件, 是的, 调试rust也用lldbgdb, rust的编译需要C, 代码调试的环境和C一样, 如果偷懒没有建立C环境, 一切都是白搭.

在运行和调试选项卡点击创建launch.json

2023-09-23 Windows系统rust开发环境配置真经_第7张图片
这里有两个配置, 如果用cargo, 就用第一个配置, 也就是CodeLLDB的基本配置, 它会在项目文件夹的下的\target\debug\文件目录中创建可运行文件.

如果想像C语言似的简单编译, 看第二个配置, 它需要配合tasks.json.

当然, 如果想比较顺利的debug, 还需要做cargo.toml的文件目录调整, 这个看下面cargo.toml设置.

launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lldb",
            "request": "launch",
            "name": "Cargo launch",
            "cargo": {
                "args": [
                    "build",
                ]
            },
        },
        {
            "type": "lldb",
            "request": "launch",
            "name": "Launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}.exe",
            "args": [],
            "cwd": "${workspaceFolder}",
            "preLaunchTask": "rustBuild"
        },
    ]
}

五. 配置 tasks.json

为了像C一样进行简易编译, 我们需要建立tasks.json文件.

菜单栏: 终端: 配置任务:

2023-09-23 Windows系统rust开发环境配置真经_第8张图片

选择图中所示:

2023-09-23 Windows系统rust开发环境配置真经_第9张图片

做一些更改:

tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "process",
            "command": "rustc",
            "args": [
                "-g",
                "${fileDirname}\\${fileBasename}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
            ],
            "problemMatcher": [
                "$rustc"
            ],
            "group": "build",
            "label": "rustBuild",
        }
    ]
}

六. 配置 Cargo.toml

这个稍微有点难, 我也是琢磨了半天才整明白:

新建终端: 快捷键 ctrl + shift + `,

注意这个 ` 是大键盘数字1左侧的那个按键.

输入命令:

E:\learnRust>cargo init

成功会显示

     Created binary (application) package

然后你的文件夹下就多了几个文件:

2023-09-23 Windows系统rust开发环境配置真经_第10张图片
这一步很重要, 将main.rssrc文件夹移动到外层的learnRust文件夹, 更改名字, 比如Learn_01.rs, 删除src文件夹.

这步关系到是否可以顺利调试, 切记.

之后就是打开 Cargo.toml 文件, 进行编辑

Cargo.toml

[package]
name = "learnRust"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]

[[bin]]
name = "learnRust"
path = "E:/learnRust/Learn_01.rs"

注意: path = "E:/learnRust/Learn_01.rs" 中的文件名, 要根据你建立的文件名随时更改, 否则无法正确编译.

如果你按以上步骤配置完成, 那么限制的文件布局是:

2023-09-23 Windows系统rust开发环境配置真经_第11张图片

现在就可以打开Learn_01.rs文件, 愉快的编码了.

传统项目, hello, world, 点击F5, 进行调试:

2023-09-23 Windows系统rust开发环境配置真经_第12张图片
2023-09-23 Windows系统rust开发环境配置真经_第13张图片

恭喜你, 迈入打 BOSS 的第一步, study made you happy!


总结

以上就是rust编译工具链的建立, 如有问题, 可以在评论区讨论.

你可能感兴趣的:(windows,rust,开发语言)