rust有三种不同的版本:stable, beta, and nightly。分别叫做不同的channel。不同的channel,功能是不同的,stable是默认的版本,也是正式版。
而beta和nightly有一些试验性的功能,可以理解为体验版。比如nightly里面就有bench的功能。
当在本机安装某个channel的时候,实际上是安装对应的toolchain,是具体的软件本身,其中比较重要的是rustc编译器和cargo包管理工具。
可以理解为channel是一个概念,toolchain是channel具体对应的一系列软件。
在不同的channel之间切换,就需要用到rustup工具。
下面是一些常见的rustup指令:
查看本地安装的channel
$ rustup toolchain list
安装某个channel,以安装nightly为例:
$ rustup toolchain install nightly
切换channel,channel的切换一般有几种方式:
- 永久更改系统默认channel
rustup default nightly
- 临时更改channel。在执行cargo指令时指定channel版本,这样不会改变系统默认channel
rustup run nightly cargo build 或者: cargo +nightly build
- 设置当前项目使用的channel。在项目目录下执行以下指令,可以更改当前项目的channel,不影响其他项目:
rustup override set nightly
总结:
- rust有三个channel: stable, beta, nightly
- 每一个channel都有自己的一套toolchain,主要是rustc和cargo
- 通过rustup在不同channel之间切换,可以临时切换,永久切换和针对项目切换
Ref
发表回复