rust中的cargo,是rust内置包管理器和源码构建工具,使用Cargo能方便的管理我们的项目
我们要熟悉使用cargo的这三个功能 :创建项目 编译代码 管理第三方依赖包
创建项目
在命令行里输入cargo new first_project创建一个项目
创建好的项目如下图
生成了一个first_project,包含子文件夹src,Cargo.toml文件,还默认创建了.gitignore文件,.gitignore文件是用于git管理代码的,现在不用理会。
src下自动创建了源文件main.rs,里面写好了一个hello world!
Cargo.toml文件是配置文件。用于指定Cargo编译这个程序时需要的配置信息。
[package]是一个区域标签,后面3行语句提供了Cargo编译这个程序时需要的配置信息,它们分别是程序名、版本号,代码应该使用哪个版本的编译器。
[dependencies]后面的区域会被用来声明项目的依赖的第三方包,现在还没有,稍后我们会添加一个。
编译代码
先进入first_project文件夹里。
cd .first_project
使用cargo build编译代码,构建工程,不运行
使用cargo run 先后编译和运行项目,一般直接使用这条命令就可以。
cargo check,只用来检查源码能否通过编译。在工程很大,需要花费很多时间编译时有用。
看一下构建项目后项目发生了哪些变化
可以看到新增了一个target目录,构建后的可执行程序在target目录下
还增加了一个Cargo.lock文件,这个文件记录了当前项目所有依赖库的具体版本号。这个是cargo来维护的,我们不要去修改。
下载依赖
我们用文本编辑器打开Cargo.toml,在[dependencies]标签下增加一行
rand = "0.3.14"
然后执行cargo buid编译
可以看到cargo帮我们下载了这个包。也许你有问题,为什么我添加的是rand = "0.3.14",但是还编译了libc包,而且还出现了和指定版本不同的rand包。
这是因为rand本身依赖于libc包,所以要下载libc。我们指定了rand版本为0.3.14后,Cargo会按照标准的语义化版本系统来理解所有的版本号,这里的数字0.3.14实际上是^0.3.14的一个简写,它表示“任何与0.3.14版本公共API相兼容的版本”。
使用安装的第三方库
use rand::Rng;fn main() { let r = rand::thread_rng().gen_range(1,100); println!("the random number is {}",r);}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。