如何从 Codespaces 中更新 rustc

问题描述 投票:0回答:1

我正在尝试使用

Rust
和 GitHub 的
Codespaces
构建一个示例“马可波罗”游戏。我正在遵循 Coursera 的“Rust 数据工程”课程第一周的示例。然而,该版本 我的
rustc
中的
codespaces
不再足以满足当前版本的
clap_builder
,这似乎是必需的。我的
Cargo.toml
文件如下:

[package]
name = "hello_marco"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
clap = {version="4.0.32", features=["derive"]}

与课程中给出的相符。但是,当我运行它时,我收到此错误:

error: package `clap_derive v4.5.0` cannot be built because it requires rustc 1.74 or newer, while the currently active rustc version is 1.70.0
Either upgrade to rustc 1.74 or newer, or use
cargo update -p [email protected] --precise ver
where `ver` is the latest version of `clap_derive` supporting rustc 1.70.0

我似乎无法更新我的 rustc 版本:

@me ➜ /workspaces/MarcoPolo2/hello_marco (main) $ rustup update
info: no updatable toolchains installed
info: checking for self-update
info: downloading self-update
info: cleaning up downloads & tmp directories
@me ➜ /workspaces/MarcoPolo2/hello_marco (main) $ rustc --version
rustc 1.70.0 (90c541806 2023-05-31)

当我查看 Clap ChangeLog 时,似乎 v 4.3.24 是第一个支持我当前的 rust 编译器的版本(假设这就是

msrv
[最低支持的 rust 版本] 的含义])。我能够(我相信)成功降级我的 clap 版本

@me ➜ /workspaces/MarcoPolo2/hello_marco (main) $ cargo update -p [email protected] --precise 4.3.24

但是,我仍然想知道如何强制我的

codespaces
环境使用更新的
rustc

rust rust-cargo github-codespaces
1个回答
0
投票

我也遇到了同样的问题,选了同样的课程。我通过更改 Dockerfile 中提取 rust 镜像的行来解决这个问题

FROM mcr.microsoft.com/devcontainers/rust:latest

我假设你有

FROM mcr.microsoft.com/devcontainers/rust:0-1-bullseye

如果您使用 VSCODE 重建镜像,请按照建议进行操作

© www.soinside.com 2019 - 2024. All rights reserved.