温馨提示×

Linux下Rust版本如何管理

小樊
43
2025-11-16 16:17:05
栏目: 编程语言

Linux 下 Rust 版本管理指南

一 核心工具与安装

  • 使用 rustup(Rust 官方工具链管理器)进行安装、更新与多版本切换,支持 stable / beta / nightly 以及具体版本号,且无需 root 权限。
  • 一键安装:
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    source "$HOME/.cargo/env"
    
  • 验证安装:
    rustc --version
    cargo --version
    
  • 说明:也可通过发行版包管理器(如 dnf/yum/apt)安装稳定版,但版本通常较旧;如需多版本与快速切换,推荐使用 rustup

二 常用版本管理操作

  • 查看与更新
    rustup show                 # 查看当前工具链与生效范围
    rustup check                # 检查是否有更新
    rustup update               # 更新所有工具链
    rustup update nightly       # 仅更新 nightly
    
  • 安装与卸载
    rustup install stable
    rustup install beta
    rustup install nightly
    rustup install 1.86.0       # 安装指定版本
    rustup uninstall nightly
    rustup uninstall 1.86.0
    
  • 全局切换与临时运行
    rustup default stable
    rustup default nightly
    rustup default 1.86.0
    rustup run nightly cargo build   # 临时用 nightly 执行命令
    
  • 路径与诊断
    rustup which rustc
    rustup which cargo
    
  • 以上命令覆盖日常所需:安装、切换、更新、临时运行与路径定位。

三 项目级版本与组件管理

  • 为单个项目固定版本(会在项目根目录生成 rust-toolchain 文件)
    cd <your-project>
    rustup override set nightly
    rustup override unset
    
  • 使用 rust-toolchain.toml(更可控,适合团队协作)
    [toolchain]
    channel = "nightly-2024-04-01"
    components = ["rustfmt", "clippy"]
    targets = ["wasm32-unknown-unknown"]
    
  • 常用组件与交叉编译
    rustup component add clippy rustfmt
    rustup component list --installed
    rustup target add wasm32-unknown-unknown
    rustup target list
    
  • 说明:组件如 clippyrustfmt 可按需增删;交叉编译目标(如 wasm32)用于多平台构建。

四 卸载与常见问题

  • 卸载
    rustup self uninstall    # 卸载 rustup 及全部工具链
    
  • 常见问题与建议
    • 找不到命令:确认已执行 source "$HOME/.cargo/env",或手动将 $HOME/.cargo/bin 加入 PATH
    • 多版本并存与隔离:全局用 rustup default 设置默认版本;项目级用 overriderust-toolchain.toml 固定版本,避免相互影响。
    • 网络受限:可配置 rustup 的代理(如使用环境变量),或在受限环境中选用国内镜像与缓存策略。

0