【Rust】Cargo介绍
- 开发
- 26
-
一、Cargo简介
- Cargo 是Rust语言的包管理工具,它帮助我们管理我们项目的依赖。
- 做js开发的同学应该了解nodejs的包管理工具npm,Cargo和npm做的事情是一样的。
- C和C++的同学可能对这个就比较陌生了,C/C++语言没有统一的依赖管理工具,各个项目用的依赖管理工具不仅相同。有用Cmake的,也有用GN的。
二、Cargo基本用法
cargo new hello_world
创建新项目。
cargo new hello_world --bin
创建二进制程序新项目。
cargo new hello_world --lib
创建库程序新项目。
cargo build
编译,默认编译debug程序。
cargo run
编译和运行。
cargo build --release
构建发布程序,做了优化,编译较慢
三、为什么要有Cargo
- 在Rust语言中一个库或者一个可执行文件,被称为crate。Crate是通过rustc工具编译出来的。
rustc hello.rs
可以直接通过rustc编译rust文件。
- 如果所有文件的编译都使用rustc来编译,文件比较多的时候,这个编译命令就会越来越多,并且如果文件依赖比较复杂,那么编译命令就会变得更加复杂。在C/C++里面可以理解成直接使用gcc/g++命令来编译整个项目。
- 所以为了更加方便的管理项目之间的依赖,就有了Cargo工具。
四、Cargo做了什么
- 为了达成上述目标,Cargo做了四件事情:
- 引入了两个元数据文件,里面包含一些包信息。
- 获取并构建包的依赖项。
- 使用正确的参数用
rustc
或者其他构建工具来构建包。
- 提供使得rust包更容易使用的约定。
原文地址:https://blog.csdn.net/C2681595858/article/details/140237684
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:https://www.suanlizi.com/kf/1811047731167367168.html
如若内容造成侵权/违法违规/事实不符,请联系《酸梨子》网邮箱:1419361763@qq.com进行投诉反馈,一经查实,立即删除!