rustup 使用
rustup 可以帮助我们安装不同版本的rust 编程需要的工具连,同时可以方便的进行不同版本
之间的切换,类似nodejs 的nvm,n, ruby 的 rvm python 的 venv 。。。
rustup 基本使用
我们在首次使用安装脚本,或者安装包安装完成rust 之后就会附带rustup了,对于需要使用不同版本
的流程如下:
- 选择一个版本,rust 提供了不同的channnel(nightly,stabel,beta. date 格式..)
- 使用
rustup install指定版本,或者rustup toolchain install - 指定
rustup default version进行版本切换 - 使用
rustup toolchain list或者rustup show检查切换配置
rustup 帮助
- toolchain
rustup-toolchain
Modify or query the installed toolchains
USAGE:
rustup toolchain <SUBCOMMAND>
FLAGS:
-h, --help Prints help information
SUBCOMMANDS:
list List installed toolchains
install Install or update a given toolchain
uninstall Uninstall a toolchain
link Create a custom toolchain by symlinking to a directory
help Prints this message or the help of the given subcommand(s)
DISCUSSION:
Many `rustup` commands deal with *toolchains*, a single
installation of the Rust compiler. `rustup` supports multiple
types of toolchains. The most basic track the official release
channels: 'stable', 'beta' and 'nightly'; but `rustup` can also
install toolchains from the official archives, for alternate host
platforms, and from local builds.
Standard release channel toolchain names have the following form:
<channel>[-<date>][-<host>]
<channel> = stable|beta|nightly|<version>
<date> = YYYY-MM-DD
<host> = <target-triple>
'channel' is either a named release channel or an explicit version
number, such as '1.8.0'. Channel names can be optionally appended
with an archive date, as in 'nightly-2017-05-09', in which case
the toolchain is downloaded from the archive for that date.
Finally, the host may be specified as a target triple. This is
most useful for installing a 32-bit compiler on a 64-bit platform,
or for installing the [MSVC-based toolchain] on Windows. For
example:
$ rustup toolchain install stable-x86_64-pc-windows-msvc
For convenience, elements of the target triple that are omitted
will be inferred, so the above could be written:
$ rustup default stable-msvc
rustup can also manage symlinked local toolchain builds, which are
often used to for developing Rust itself. For more information see
`rustup toolchain help link`.
一个简单安装例子
比如我们需要安装一个nightly-2019-01-17 , 这个格式遵循上边的约定
- 安装如下:
rustup toolchain install nightly-2019-01-17
信息如下:
可以看出信息还是很详细的(我们同时也知道了版本)
rustup toolchain install nightly-2019-01-17
info: syncing channel updates for 'nightly-2019-01-17-x86_64-apple-darwin'
316.6 KiB / 316.6 KiB (100 %) 223.0 KiB/s in 1s ETA: 0s
info: latest update on 2019-01-17, rust version 1.33.0-nightly (ceb251214 2019-01-16)
info: downloading component 'rustc'
78.6 MiB / 78.6 MiB (100 %) 537.6 KiB/s in 3m 6s ETA: 0s
info: downloading component 'rust-std'
48.0 MiB / 51.3 MiB ( 94 %) 44.8 KiB/s in 3m 14s ETA: 1m 15s
48.0 MiB / 51.3 MiB ( 94 %) 48.0 KiB/s in 3m 16s ETA: 1m 8s
51.3 MiB / 51.3 MiB (100 %) 282.4 KiB/s in 3m 36s ETA: 0s
info: downloading component 'cargo'
3.4 MiB / 3.4 MiB (100 %) 388.1 KiB/s in 9s ETA: 0s
info: downloading component 'rust-docs'
8.5 MiB / 8.5 MiB (100 %) 606.9 KiB/s in 18s ETA: 0s
info: installing component 'rustc'
78.6 MiB / 78.6 MiB (100 %) 8.9 MiB/s in 7s ETA: 0s
info: installing component 'rust-std'
51.3 MiB / 51.3 MiB (100 %) 12.1 MiB/s in 4s ETA: 0s
info: installing component 'cargo'
info: installing component 'rust-docs'
8.5 MiB / 8.5 MiB (100 %) 1.3 MiB/s in 6s ETA: 0s
nightly-2019-01-17-x86_64-apple-darwin installed - rustc 1.33.0-nightly (ceb251214 2019-01-16)
info: checking for self-updates
- 启动新的为default
rustup default nightly-2019-01-17
- 查看toolchain
rustup toolchain list
效果:
stable-x86_64-apple-darwin
nightly-2019-01-17-x86_64-apple-darwin (default)
nightly-x86_64-apple-darwin
- 配置default
我们可以使用
<channel>[-<date>][-<host>]格式,也可以使用 toolchain list 看到的版本
rustup default nightly-2019-01-17
效果
info: using existing install for 'nightly-2019-01-17-x86_64-apple-darwin'
info: default toolchain set to 'nightly-2019-01-17-x86_64-apple-darwin'
nightly-2019-01-17-x86_64-apple-darwin unchanged - rustc 1.33.0-nightly (ceb251214 2019-01-16)
- 检查default
rustup show
效果:
Default host: x86_64-apple-darwin
installed toolchains
--------------------
stable-x86_64-apple-darwin
nightly-2019-01-17-x86_64-apple-darwin (default)
nightly-x86_64-apple-darwin
active toolchain
----------------
nightly-2019-01-17-x86_64-apple-darwin (default)
rustc 1.33.0-nightly (ceb251214 2019-01-16)
或者:
rustup toolchain list
效果:
stable-x86_64-apple-darwin
nightly-2019-01-17-x86_64-apple-darwin (default)
nightly-x86_64-apple-darwin
说明
因为rust 语言的变动,可能经常碰到编译问题(依赖别人的包),通过rustup 的版本管理,基本上可以解决我们
实际碰到的问题,同时对于不同版本包的问题,可以结合github 的issue 进行查看(好多时候都会找到的)
参考资料
https://forge.rust-lang.org/channel-layout.html
https://forge.rust-lang.org/
https://forge.rust-lang.org/releases.html
https://rust-lang.github.io/rustup-components-history/index.html
rustup 使用的更多相关文章
- rustup命令速度慢
通过以下命令更换镜像: $ENV:RUSTUP_DIST_SERVER='https://mirrors.ustc.edu.cn/rust-static' $ENV:RUSTUP_UPDATE_ROO ...
- 不用rustup,Windows下gnu版Rust安装与开发环境配置
写在前面 本文介绍了在不使用rustup的情况下,在Windows上安装gnu版的Rust,并配置开发环境(VSCode + rust-analyzer,CLion + IntelliJ Rust)的 ...
- 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
今年微软Build 2016大会最让开发人员兴奋的消息之一,就是在Windows上可以原生运行Linux bash,对开发人员来说,这是一个喜闻乐见的消息. 1 安装 你必须安装开发者预览版本,才能使 ...
- 我的Shell + VIM配置
1. 安装powerline-shell 下载powerline-shell # cd /opt/ # git clone https://github.com/milkbikis/powerline ...
- bash on windows
bash on windows 今年微软Build 2016大会最让开发人员兴奋的消息之一,就是在Windows上可以原生运行Linux bash,对开发人员来说,这是一个喜闻乐见的消息. 1 安装 ...
- Rust语言之HelloWorld
Rust语言之HelloWorld 参考文档: http://doc.crates.io/guide.html 1 什么是Cargo 相当于maven/ant之于java, automake之于c, ...
- Rust语言
Rust语言 https://doc.rust-lang.org/stable/book/ http://www.phperz.com/article/15/0717/141560.html Rust ...
- ycmd for emacs 代码自动补全
YCMD FOR EMACS Table of Contents 1. 安装 1.1. 下载 1.2. 安装相关依赖 1.3. 更新submodules 1.4. 安装 2. 配置 1 安装 1. ...
- rust debug之基于pdb
方法一: 用visual studio 步骤: 安装msvc工具链 rustup toolchain install stable-x86_64-pc-windows-msvc 切换到该工具链 rus ...
随机推荐
- Linux新装系统简单指南
也许更好的阅读体验 换源 1. 备份原来的源 sudo cp /etc/apt/sources.list /etc/apt/sources_init.list 2.更换源 先用\(gedit\)打开文 ...
- 关于java中是引用传递还是值传递的问题
关于JAVA中参数传递问题有两种,一种是按值传递(如果是基本类型),另一种是按引用传递(如果是對象).首先以两个例子开始:1)public class Test2 { public static vo ...
- docker build 错误 /usr/share/dotnet/sdk/2.1.801/Microsoft.Common.CurrentVersion.targets(2106,5): warning MSB3245: Could not resolve this reference
docker dotnet Restore 的时候报错, 一度怀疑是linux的dotnet core sdk没有装好, 卸了装, 装了卸, 试了好几遍还是无效(Microsoft.Common.Cu ...
- 在Java中如何设置一个定时任务,在每天的一个时间点自动执行一个特定的程序
Quartz定时机制 首先导入jar包到程序内 quartz-all-1.6.0.jar 然后创建一个XML TimeConfig.xml 名字可以自己定义 <?xml version=&quo ...
- centos8安装chromium浏览器
1/yum install epel* [root@localhost framework]# yum list epl* Last metadata expiration check: 0:57:4 ...
- 2019 顺网游戏java面试笔试题 (含面试题解析)
本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.顺网游戏等公司offer,岗位是Java后端开发,因为发展原因最终选择去了顺网游戏,入职一年时间了,也成为了面 ...
- Nikitosh 和异或(trie树)
题目: #10051. 「一本通 2.3 例 3」Nikitosh 和异或 解析: 首先我们知道一个性质\(x\oplus x=0\) 我们要求\[\bigoplus_{i = l}^ra_i\]的话 ...
- js节流与防抖函数封装
js节流与防抖函数封装 常见应用场景: window的 resize 和 scroll 事件: 文字输入时的 keyup 事件: 元素拖拽.移动时的 mousemove 事件: 防抖 定义:多次触发事 ...
- Android为TV端助力之弹出软键盘方式
- Android为TV端助力之查找当前界面焦点所在位置
View rootview = this.getWindow().getDecorView(); int focusId = rootview.findFocus().getId(); Log.i(T ...