Rust学习日记(一)Cargo的使用

这篇具有很好参考价值的文章主要介绍了Rust学习日记(一)Cargo的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:
这是一个系列的学习笔记,会将笔者学习Rust语言的心得记录。
当然,这并非是流水账似的记录,而是结合实际程序项目的记录,如果你也对Rust感兴趣,那么我们可以一起交流探讨,使用Rust来构建程序。

注:本文中使用Rust都是在windows环境下,如果是macOS或者linux,其指令或有不同,请注意。

Cargo的定义及使用

在Rust语言的官方文档中,将Cargo定义为rust的系统构建与程序包管理器。
Cargo的原意是货物,在这里我们可以将其理解为货物管理,引申为程序语言设计时的管理工具,相当于我们对货物进行管理一样。
作为初学者,你可能会有疑问,为什么一定要用Cargo命令呢?
其实,要编译Rust的程序,并非一定要用Cargo,你可以这样来编译你的rust程序:

> rustc main.rs
> .\main.exe
Hello, world!

Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
“rustc”可以直接将.rs格式的程序编译为可执行文件,在windows环境,即exe文件。
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
对于简单的程序,使用rustc编译足矣,但随着学习的深入,项目的复杂化,rustc很显然就很难满足使用,因为项目变得大而复杂后,不光是编译,还要管理项目相关的其他文件,如配置信息,依赖项,等。
而Rust提供了复杂项目所需的工具,即Cargo。对于Cargo的介绍,我们千言万语汇成一句话,Cargo可以使你的Rust项目使用起来更简单。

1、Cargo新建项目

$ cargo new hello_cargo
$ cd hello_cargo

Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
使用Cargo创建一个新项目,非常简单,会自动在当前文件夹下生成项目文件夹、主程序文件main.rs(src文件夹下)以及相关的配置文件Cargo.toml。

2、Cargo构建和编译项目Cargo build、Cargo run

PS E:\100rust\hello_world> cargo build
   Compiling hello_world v0.1.0 (E:\100rust\hello_world)
    Finished dev [unoptimized + debuginfo] target(s) in 1.48s

Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
Cargo build会自动构建项目,自动创建一个target文件夹,文件夹包含编译后的文件:
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
可以看到里面有个hello_world.exe文件,此时可以直接调用它,成功运行后输出helloworld。
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
但是,我们可以使用Cargo run来一键编译且运行:
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
3、Cargo check仅编译项目
有一个常会遇到的场景是,我在编程序时只想检查项目,但并不想生成可执行文件,我的目的是确保没有错误或者bug。因为,通常编译且生成可执行文件,需要的时间会大于仅编译检查的时间,所以使用Cargo check会更快,如果你使用Cargo run当然也是可行的,但我相信你不会这么做。
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言
以上是一个简单但完整的项目构成的过程,使用Cargo在hello world这样的项目中似乎有点大材小用,但Cargo是为了你构建大型项目准备的,你应该在学习Rust的初期,就直接使用Cargo,这对你以后管理rust项目非常重要。

当然,Cargo的指令远不止以上那些。

   build, b    Compile the current package
    check, c    Analyze the current package and report errors, but don't build object files
    clean       Remove the target directory
    doc, d      Build this package's and its dependencies' documentation
    new         Create a new cargo package
    init        Create a new cargo package in an existing directory
    add         Add dependencies to a manifest file
    remove      Remove dependencies from a manifest file
    run, r      Run a binary or example of the local package
    test, t     Run the tests
    bench       Run the benchmarks
    update      Update dependencies listed in Cargo.lock
    search      Search registry for crates
    publish     Package and upload this package to the registry
    install     Install a Rust binary. Default location is $HOME/.cargo/bin
    uninstall   Uninstall a Rust binary

如Cargo clean,将清除target文件夹。
Rust学习日记(一)Cargo的使用,Rust学习笔记,rust,学习,开发语言文章来源地址https://www.toymoban.com/news/detail-745693.html

到了这里,关于Rust学习日记(一)Cargo的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Rust之Cargo的使用

    Cargo 是 Rust 的构建系统和包管理器。⼤多数 Rustacean 们使⽤ Cargo 来管理他们的 Rust 项⽬,因为它可以为你处理很多任务,⽐如构建代码、下载依赖库并编译这些库。(我们把代码所需要的库叫做 依赖(dependencies))。 查看cargo版本 我这里可以看到具体的版本好和日期 第一行

    2024年02月03日
    浏览(33)
  • 【Rust】Rust学习 第十四章进一步认识 Cargo 和 Crates.io

    本章会讨论 Cargo 其他一些更为高级的功能,我们将展示如何: 使用发布配置来自定义构建 将库发布到 crates.io 使用工作空间来组织更大的项目 从 crates.io 安装二进制文件 使用自定义的命令来扩展 Cargo Cargo 的功能不止本章所介绍的,关于其全部功能的详尽解释,请查看 文

    2024年02月12日
    浏览(42)
  • 【Rust教程 | 基础系列2 | Cargo工具】Cargo介绍及使用

    在编程世界中,工具的选择与使用同样重要,甚至有时候比编程语言本身更为重要。对于Rust来说,Cargo就是这样一款强大的工具。本文将详细介绍Cargo的各项功能,并通过实例演示如何使用这些功能。希望通过本文,读者能够熟练掌握Cargo的使用,从而更好地进行Rust开发。

    2024年02月15日
    浏览(60)
  • Jabbi的Rust学习日记(二)

            就目前我学习到的rust知识来看,我认为rust有以下几个特征: 链式调用 表达式 强类型         使用use导入包,我觉得rust的导包和python的很像         main函数是rust可执行程序最先执行的代码,可以说是程序的入口,在golang中也是,我学过的语言好像都是这样    

    2024年02月09日
    浏览(25)
  • Jabbi的Rust学习日记(一)

            Windows :Install Rust - Rust Programming Language (rust-lang.org)         访问网页,下载64bit | 32bit 版本          下载完成后打开,直接enter即可         Linux :输入指令 curl https://sh.rustup.rs-sSf | sh         我会报错,好像是链接不到这个网址,所以linux安装的本blog暂时不给建

    2024年02月09日
    浏览(29)
  • 【Rust 基础篇】Rust Cargo 自定义构建

    在 Rust 中,Cargo 是一个功能强大的构建工具和包管理器,它可以帮助我们管理项目的依赖、构建和发布。Cargo 提供了许多默认的构建行为,但有时我们需要自定义构建过程以满足特定的需求。本篇博客将详细介绍如何在 Rust 中使用 Cargo 自定义构建过程,包括自定义构建脚本、

    2024年02月16日
    浏览(41)
  • ubuntu上安装rust和cargo

    第一种方法: 下面一句话就搞定。但特殊情况下(对rust版本有要求的时候)需要使用第2种方法 第2种方法: 不想用apt 运行后,会让你选择方式,选择1,安装。  How to Install Rust and Cargo on Ubuntu Other Linux

    2024年02月08日
    浏览(61)
  • Rust 笔记:Rust 语言中哈希结构(哈希映射,HashMap)、集合(哈希集,HashSet)及其使用

    Rust 笔记 Rust 语言中映射(HashMap)与集合(HashSet)及其用法 作者 : 李俊才 (jcLee95):https://blog.csdn.net/qq_28550263?spm=1001.2101.3001.5343 邮箱 : 291148484@163.com 本文地址 :https://blog.csdn.net/qq_28550263/article/details/130876735 【介绍】:本文介绍 Rust 中哈希结构相关概念及其使用。在 R

    2024年02月09日
    浏览(53)
  • Rust更换Cargo国内源,镜像了寂寞

    当我写作此文时,可能理解并不深刻。今日重读 Crates.io 文档,发现它理论上还是可以做到“既换皮又换身的”: A minimal registry can be implemented by having a git repository that contains an index, and a server that contains the compressed .crate files created by cargo package . A full-featured registry that supports

    2024年02月05日
    浏览(38)
  • 【Rust】cargo update或者cargo build国内被墙失败解决办法

    cargo build 时下载失败(Mac 10.13.4),提示: error: failed to download from https://crates-io.proxy.ustclug.org/api/v1/crates/actix-codec/0.3.0/download Caused by: [56] Failure when receiving data from the peer (Received HTTP code 500 from proxy after CONNECT) 或者提示: error: failed to download from https://crates-io.proxy.ustclug.org/api/v1

    2023年04月08日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包