【Rust精华小册】2. Rust开发环境预备,Go!

如果你只是想体验一下Rust或许快速验证主意能够拜访play.rust-lang.org

正式的学习和开发还是需求在你的本地装置Rust,这就用到了Rustup。

Rustup是Rust社区供给的东西链办理东西,运用Rustup来装置和办理东西链,而且能够随时切换东西链的版别。拜访地址: rustup.rs/

【Rust精华小册】2. Rust开发环境预备,Go!

本节课用到的软件能够直接通过官网下载或许加群获取:添加微信code2c,回复“加群”

在windows11装置Rust

这里以windows11为例,其它版别也是相似。在windows渠道有两个版别可供挑选:

x86_64-pc-windows-gnu x86_64-pc-windows-msvc

GNU 和MSVC都是编译器东西链,它们供给一套东西和库,这些东西和库被用来构建、链接和调试应用程序。Rust运用了它们供给的连接器,其实还有第三种挑选便是LLVM,我认为Rust终究会在各个渠道运用LLVM的连接器来取代现在的GNU和MSVC的位置,因为rust编译器在汇编阶段运用的便是LLVM,为了统一起来极有可能会选用LLVM的连接器,但现在这项作业还没有完成。为了获得更好的兼容性和运行功率,咱们在windows渠道上挑选MSVC。

www.rust-lang.org/zh-CN/learn…

下面的命令窗口提示,你的电脑缺少vc 环境(连接器和windows api库),也便是需求装置MSVC。

【Rust精华小册】2. Rust开发环境预备,Go!
这里咱们挑选第一项,他会下载vs的装置包。。。等待它下载完成。

下载完成会弹出装置弹框,点击“持续”,接下来会下载装置程序并装置vs。

【Rust精华小册】2. Rust开发环境预备,Go!

msvc与windows sdk有必要勾选,然后点击“装置”

【Rust精华小册】2. Rust开发环境预备,Go!

出现下面界面就说明现已装置成功了,就能够关掉了。

【Rust精华小册】2. Rust开发环境预备,Go!

关掉vs,回到cmd持续装置rust,挑选第一项默许装置即可。

【Rust精华小册】2. Rust开发环境预备,Go!

到这一步下载东西链并设置好PATH环境变量。

【Rust精华小册】2. Rust开发环境预备,Go!

当看到上面这个提示就说明现已装置完成了,最终测验rust是否装置成功

# 检查rustup版别
rustup -V
# 检查东西链
rustup show
# 检查cargo版别
cargo -V
# 检查编译器版别
rustc -V

在Linux装置Rust

类Unix系统上装置Rust非常简略,只需履行下面命令就能够了。

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

装置完成后参阅windows渠道上的验证方法,检查东西链的版别信息,以确保能正常运用。

更多参数检查:rust-lang.github.io/rustup/inst…

Hello world

任何一门编程语言的入门都少不了Hello world,咱们快速写一个helloworld程序,预备玩起来: 创立一个文件hello.rs

// hello.rs
fn main() {
    println!("Hello, world!");
}

编译并履行:

$ rustc hello.rs
$ .hello.exe # on Windows

接下来咱们需求挑选一个趁手的编辑器,现在有vim、vscode和去年jetbrains推出的RustRover,能够根据你的喜爱挑选。我强烈建议你试用一下RustRover,尽管它还在测验阶段。 www.jetbrains.com/rust/

【Rust精华小册】2. Rust开发环境预备,Go!

经过上面的过程,咱们现已能愉快开发rust项目。 但是开发项目一般会有一套标准或许说最佳实践,来办理项目依赖和约定目录结构,不至于像前期c/c 每个项目都有一套自己标准。现代语言一般都有的东西,在js中有npm,java中有maven,rust相同供给了相似的东西来办理项目便是cargo。有了cargo咱们就能够创立rust package,构建以及发布package到官方仓库。

下面简略演示怎么运用cargo新建一个项目:

$ cargo new hello_world
$ cd hello_world
$ tree .
.
├── Cargo.toml
└── src
    └── main.rs
1 directory, 2 files

cargo的基本知识鄙人一节中介绍。

参阅和拓展