You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Rust版本不一致:Anchor Build报错与终端显示版本不符

如何让Anchor构建时使用的Rust版本与终端显示版本一致?

问题重现

终端默认Rust版本为1.69.0-nightly,但执行anchor build时,工具会调用cargo +bpf命令,使用旧的1.56.0-dev版本,导致依赖版本不兼容错误:

% rustc --version 
rustc 1.69.0-nightly (f77bfb733 2023-03-01)  
% anchor build   
BPF SDK: .../1.9.4/solana-release/bin/sdk/bpf
cargo-build-bpf child: rustup toolchain list -v
cargo-build-bpf child: cargo +bpf build --target bpfel-unknown-unknown --release
error: package `anchor-attribute-constant v0.26.0` cannot be built because it requires rustc 1.59 or newer, while the currently active rustc version is 1.56.0-dev

原因

Anchor构建Solana程序时,默认使用bpf专属rustup工具链,该工具链是Solana BPF SDK初始安装时自带的旧版本,和终端默认的Rust版本相互独立。

解决方案

  1. 查看当前所有rustup工具链,确认bpf链的版本:
    rustup toolchain list -v
    
  2. 升级bpf工具链到满足依赖要求的版本(至少1.59+):
    • 安装最新稳定版的bpf工具链:
      rustup toolchain install bpf
      
    • 或者指定和终端默认版本一致的版本(比如1.69.0-nightly):
      rustup toolchain install bpf-1.69.0-nightly
      
  3. 验证升级后的bpf链版本:
    rustc +bpf --version
    
  4. 重新执行anchor build,此时会使用升级后的bpf工具链,版本不兼容问题即可解决。

内容的提问来源于stack exchange,提问作者bernardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 17:32:37