Win11 WSL2中运行cargo build-bpf时版本选择失败的问题
解决方案:Solana cargo build-bpf 依赖版本不匹配问题
问题根源
你的solana-cli版本为1.13.8,但下载的BPF工具链却是v1.27,版本严重不匹配;同时项目依赖的solana-program被拉取了旧版本1.8.16,和regex v1.8.3等依赖的版本约束冲突,导致aho-corasick无法找到匹配版本。
修复步骤
统一项目依赖与CLI版本
打开项目根目录的Cargo.toml,将solana-program的依赖版本明确指定为和solana-cli一致的1.13.8:solana-program = "=1.13.8"清理旧依赖缓存与构建目录
删除旧的依赖锁文件和构建产物,避免缓存干扰:rm Cargo.lock rm -rf target清理不匹配的BPF工具链
删除下载的v1.27版本BPF工具,重新初始化对应CLI版本的工具链:rm -rf ~/.cache/solana/v1.27 solana-install init 1.13.8更新依赖并重新构建
强制更新solana相关依赖到指定版本,再执行BPF构建:cargo update -p solana-program@1.13.8 cargo build-bpf
内容的提问来源于stack exchange,提问作者s_k
相关产品推荐
相关产品推荐

