error: package `solana-program v1.18.3` cannot be built because it requires rustc 1.72.0 or newer, w

在使用anchor build项目的时候,遇到以下错误:

error: package `solana-program v1.18.3` cannot be built because it requires rustc 1.72.0 or newer, while the currently active rustc version is 1.68.0-dev
Either upgrade to rustc 1.72.0 or newer, or use
cargo update -p solana-program@1.18.3 --precise ver
where `ver` is the latest version of `solana-program` supporting rustc 1.68.0-dev

要求两个环境变量:
一个是solana安装的版本;可以使用solana -V查看:

 ~/Doc/solana/zhuhai/hello_world  on master ?12  solana -V                                                                   1 err  at 21:06:05 
solana-cli 1.17.24 (src:ee1365a9; feat:3580551090, client:SolanaLabs)

一个是rust toolchain, 使用rustup show 查看

 ~/Doc/so/z/hello_world  on master ?12  rustup show                                                                   ok  took 59s  at 20:53:06 
Default host: aarch64-apple-darwin
rustup home:  /Users/hanpeng/.rustup

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

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

installed targets for active toolchain
--------------------------------------

aarch64-apple-darwin
wasm32-unknown-unknown

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

stable-aarch64-apple-darwin (default)
rustc 1.76.0 (07dca489a 2024-02-04)

先说怎么看: active toolchian下边会展示你真在使用的active的toolchain,在它下边会展示这个toolchain的rustc的版本。
在这里插入图片描述

其实rust toolchain这里default选的哪个不重要,多实验几次你就会发现,solana程序默认运行的是solana的toolchain ,所以即使我这里用的1.76.0的rustc,已经大于了他要求的1.72.0,依然anchor build 不起来。因为solana toolchain依然是rustc 1.68.0-dev

在这里插入图片描述
解决方法就是通过solana-install init 1.18.1 命令升级solana版本,版本自己选,不一定非1.18.1,
在这里插入图片描述

再次查看solana 的rustc已经升级,可以完成anchor build命令。
这里可能会有延迟,我升级1.18.1后立马查看了一次rustup show 发现版本还没变,第二次查看的时候才真正完成了升级。
另外只要solana toolchain更新了就行,你可以将default toolchain设置为你原来的。因为 你这里选哪个作为default ,solana都会默认运行solana的。
在这里插入图片描述
在这里插入图片描述
参考:
https://solana.stackexchange.com/questions/9798/error-building-program-with-solana-program-v1-18-and-cli-v1-17/9799
https://reebug.com/

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值