【Rust学习记录】1. 开发环境搭建
本系列参考书目:《RUST权威指南》
久闻rust大名,趁着研究生还是学习生涯,抽空出来试试这个所谓的既高效,又安全的语言
环境安装与搭建
Rust安装
windows的安装很傻瓜式,只要进入官网 ,下载最新版本的安装包,按照进行安装即可。期间可能会提示让你安装VS的工具,照着安装即可。
安装完成后,就可以通过 rustc --version
来测试是否安装成功了。
同时,安装后rust也会在本地生成一份文档,可以通过 rustup doc
用浏览器打开。
Hello World!
接下来进行一个开启一门全新语言的必备仪式,hello world!
- 新建一个文件命名为
hello.rs
rs就是rust代码文件的后缀 - 编写代码
1 | fn main(){ |
- 编译程序
rustc hello.rs
,接下来就会看到文件夹内生成了一个可执行文件 hello.exe,执行它,就能看到你的 hello world啦~跨过这一步,我们就是一名rust开发者了
稍微了解一下这个函数
首先fn就是function的缩写,用来定义函数;其他语法都和c++差不多,唯独不一样的就是函数println后带着一个感叹号,这似乎是rust里的宏机制,这个后面再学学吧。
Cargo的安装与使用
创建项目
书上写的是,cargo是构建+包管理的工具,或许可以理解成,ubuntu里的apt+cmake的组合?
在安装rust时就已经同步安装了cargo,我们可以通过 cargo --version
来检查是否正确安装
1 | cargo new hello_cargo |
这一个命令会使用cargo来创建新的项目架构,我们进入创建的hello_cargo文件夹,可以看到cargo帮我们初始化了一个Cargo.toml文件,一个src目录,放置了一个main.rs的源文件,还有一个.gitignore文件,说明它还帮我们配置了git版本管理
关于toml文件,我们可以用编辑器打开它
1 | [package] |
我们可以看到这么些东西,上面自然就是你所创建的代码包的相关信息,而dependencies就是我们代码需要依赖的第三方包信息,不过我们一个hello world不需要什么,所以现在这里是空的。
也就是说,这是个rs项目的标准配置文件
我们再打开main.rs,就会发现cargo已经帮我们写好了一个hello world程序~
编译、运行与发布
之前用rustc来编译单个文件,现在我们来使用cargo构建整个项目,首先回到根目录 hello_cargo,输入命令
1 | cargo build |
编译完成如上图,我们就可以发现,目录里生成了一个target文件夹,在./targe/debug
目录下,就可以找到我们编译成功的可执行文件了,同样运行它,就能看到 hello world了
PS:如果想要编译+运行,可以使用 cargo run
命令(若源代码未发生改变,cargo run不会重新进行构建,而是直接运行)
另外,cargo还有一个比较好用的命令 cargo check
,这个命令可以让你在编译大型程序的时候,免去漫长的编译等待,快速的知道代码能否完成编译(真的这么神吗,cmake编译一个小时opencv最后环境出错编译失败的我如此问道)
如果你已经准备好发布你的程序了,那么就可以用 cargo build --release
来编译代码,它会在 target/release
的目录下生成可执行文件,和debug不同的是,它会花更长的编译时间来优化你的代码,使代码有更好的运行性能。也就是说,普通的build侧重于快速的编译,让你调试程序,release build侧重于可执行文件的运行性能,用来交付给用户。
可以看到编译后有一个optimized的标签,表示是优化过的target,同时也少了debug info。(但编译速度更快了,应该就是我之前debug编译过一次,基于那个的基础上,又花了0.84s进行优化)
PS:同理,你想编译完直接测试,可以用 cargo run --release
这么看来,cargo应该就是rust构建项目的核心工具了。
到此为止,第一章结束。
- 标题: 【Rust学习记录】1. 开发环境搭建
- 作者: TwoSix
- 创建于 : 2023-03-24 22:14:11
- 更新于 : 2024-07-04 23:52:28
- 链接: https://twosix.page/2023/03/24/【Rust学习记录】1-开发环境搭建/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。