首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的rustup rust-toolchain文件没有覆盖默认设置?

为什么我的rustup rust-toolchain文件没有覆盖默认设置?
EN

Stack Overflow用户
提问于 2020-12-18 05:54:51
回答 3查看 1.6K关注 0票数 0

我想使用Rust的“夜间”版本来处理箭头和数据扩散。根据this post和rustup book,我应该能够在项目的主目录中放置一个rust-toolchain文件,其中只包含单词"nightly“,这应该使其成为该项目的默认构建。然而,这并不起作用。

有什么建议我遗漏了什么吗?

当我检查默认设置时,我看到它使用的是“稳定”版本。

代码语言:javascript
复制
(base) Apples-MBP:data_fusion_tutorial Daniel$ rustup default
stable-x86_64-apple-darwin (default) 

下面是我的项目目录:

代码语言:javascript
复制
(base) Apples-MBP:data_fusion_tutorial Daniel$ ls -a
.       ..      .git        .gitignore  Cargo.lock  Cargo.toml  rust-toolchain  src     target

如果我运行

代码语言:javascript
复制
rustup override set nightly

然后项目构建正常,但是默认设置仍然是“稳定的”。

EN

回答 3

Stack Overflow用户

发布于 2020-12-18 06:27:06

rustup default打印全局默认工具链。您可以运行rustup show来获取当前目录的活动工具链:

代码语言:javascript
复制
$ rustup show

installed toolchains
--------------------
stable-x86_64-unknown-linux-gnu (default)
nightly-x86_64-unknown-linux-gnu

active toolchain
----------------
rustc 1.48.0 (7eac88abb 2020-11-16)

设置目录覆盖将修改活动工具链:

代码语言:javascript
复制
$ rustup override set nightly
$ rustup show

installed toolchains
--------------------
stable-x86_64-unknown-linux-gnu (default)
nightly-x86_64-unknown-linux-gnu

active toolchain
----------------
nightly-x86_64-unknown-linux-gnu (directory override for '/currentproject')
rustc 1.50.0-nightly (e792288df 2020-12-05)

请注意,稳定程度仍然是默认的工具链,但活动的工具链更改为nightly。要更改全局默认值,可以运行default命令:

代码语言:javascript
复制
$ rustup default nightly
$ rustup default
nightly-x86_64-unknown-linux-gnu (default)
票数 1
EN

Stack Overflow用户

发布于 2021-03-13 00:07:01

我也有类似的问题。

代码语言:javascript
复制
$ cat rust-toolchain.toml
[toolchain]
channel = "nightly"
$ rustup show
Default host: aarch64-apple-darwin
rustup home:  /Users/n8henrie/.rustup

installed toolchains
--------------------

stable-aarch64-apple-darwin (default)
nightly-aarch64-apple-darwin

active toolchain
----------------

stable-aarch64-apple-darwin (default)
rustc 1.50.0 (cb75ad5db 2021-02-10)

有趣的是,如果我删除.toml扩展,它可以工作:

代码语言:javascript
复制
$ mv rust-toolchain{.toml,}
$ rustup show
Default host: aarch64-apple-darwin
rustup home:  /Users/n8henrie/.rustup

installed toolchains
--------------------

stable-aarch64-apple-darwin (default)
nightly-aarch64-apple-darwin

active toolchain
----------------

nightly-aarch64-apple-darwin (overridden by '/path/to/cwd/rust-toolchain')
rustc 1.52.0-nightly (3a5d45f68 2021-03-09)

它当然looks like的toml扩展应该是好的,不确定为什么它不工作:

在这些情况下,工具链可以在项目目录中的名为rust-toolchain.toml或rust- toolchain的文件中命名。

它也适用于我的单词nightly,所以我不确定为什么它不适用于您,但似乎这里可能有一些怪癖。

也许您可以对名为rust-toolchain的文件尝试TOML语法

编辑:看起来.toml扩展是一个recent development,也许书的更新是在工具更新之前发布的。

EDIT2:最新的rustup版本是20201202的1.23.1,这是我正在运行的版本,所以我的问题可能出在这里。您运行的是哪个版本的rustup?

https://github.com/rust-lang/rustup/releases

票数 1
EN

Stack Overflow用户

发布于 2021-05-12 02:31:00

执行一个rustup update,这应该会起作用。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65348882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档