良许Linux教程网 干货合集 Rust 的构建系统和包管理器:Cargo

Rust 的构建系统和包管理器:Cargo

Cargo 是 Rust 的构建系统和包管理器。

Rust 开发者常用 Cargo 来管理 Rust 工程和获取工程所依赖的库。在上个教程中我们曾使用 cargo new greeting 命令创建了一个名为 greeting 的工程,Cargo 新建了一个名为 greeting 的文件夹并在里面部署了一个 Rust 工程最典型的文件结构。这个 greeting 文件夹就是工程本身。

Cargo 功能

Cargo 除了创建工程以外还具备构建(build)工程、运行(run)工程等一系列功能,构建和运行分别对应以下命令

cargo build
cargo run

Cargo 还具有获取包、打包、高级构建等功能,详细使用方法参见 Cargo 命令。

在 VSCode 中配置 Rust 工程

Cargo 是一个不错的构建工具,如果使 VSCode 与它相配合那么 VSCode 将会是一个十分便捷的开发环境。

在上一章中我们建立了 greeting 工程,现在我们用 VSCode 打开 greeting 文件夹(注意不是 runoob-greeting)。

打开 greeting 之后,在里面新建一个新的文件夹 .vscode (注意 vscode 前面的点,如果有这个文件夹就不需要新建了)。在新建的 .vscode 文件夹里新建两个文件 tasks.json 和 launch.json,文件内容如下:

tasks.json 文件

{
    "version""2.0.0",
    "tasks": [
        {
            "label""build",
            "type""shell",
            "command":"cargo",
            "args": ["build"]
        }
    ]
}

launch.json文件(适用在 Windows 系统上)

{
    "version""0.2.0",
    "configurations": [
        {
            "name""(Windows) 启动",
            "preLaunchTask""build",
            "type""cppvsdbg",
            "request""launch",
            "program""${workspaceFolder}/target/debug/${workspaceFolderBasename}.exe",
            "args": [],
            "stopAtEntry"false,
            "cwd""${workspaceFolder}",
            "environment": [],
            "externalConsole"false
        },
       {
            "name""(gdb) 启动",
            "type""cppdbg",
            "request""launch",
            "program""${workspaceFolder}/target/debug/${workspaceFolderBasename}.exe",
            "args": [],
            "stopAtEntry"false,
            "cwd""${workspaceFolder}",
            "environment": [],
            "externalConsole"false,
            "MIMode""gdb",
            "miDebuggerPath""这里填GDB所在的目录",
            "setupCommands": [
                {
                    "description""为 gdb 启用整齐打印",
                    "text""-enable-pretty-printing",
                    "ignoreFailures"true
                }
            ]
        }
    ]
}

launch.json 文件(适用在 Linux 系统上)

{
   "version""0.2.0",
   "configurations": [
       {
           "name""Debug",
           "type""gdb",
           "preLaunchTask""build",
           "request""launch",
           "target""${workspaceFolder}/target/debug/${workspaceFolderBasename}",
           "cwd""${workspaceFolder}"
       }
   ]
}

launch.json 文件(适用在 Mac OS 系统上)

{
   "version""0.2.0",
   "configurations": [
       {
           "name""(lldb) 启动",
           "type""cppdbg",
           "preLaunchTask""build",
           "request""launch",
           "program""${workspaceFolder}/target/debug/${workspaceFolderBasename}",
           "args": [],
           "stopAtEntry"false,
           "cwd""${workspaceFolder}",
           "environment": [],
           "externalConsole"false,
           "MIMode""lldb"
       }
   ]
}

然后点击 VSCode 左栏的 “运行”。

如果你使用的是 MSVC 选择 “(Windows) 启动”。

如果使用的是 MinGW 且安装了 GDB 选择”(gdb)启动”,gdb 启动前请注意填写 launch.json 中的 “miDebuggerPath”。 Cargo 教程介绍Cargo 教程介绍 程序就会开始调试运行了。运行输出将出现在”调试控制台”中: Cargo 教程介绍Cargo 教程介绍

在 VSCode 中调试 Rust

调试程序的方法与其它环境相似,只需要在行号的左侧点击红点就可以设置断点,在运行中遇到断点会暂停,以供开发者监视实时变量的值。 Cargo 教程介绍Cargo 教程介绍

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部