执行anchor test报错:Rust目录未找到,求解Solana正确目录结构
问题解决及Solana目录结构说明
一、报错临时修复方案
- 手动创建缺失的
bin目录:mkdir -p /home/dhruv/.local/share/solana/install/releases/1.18.2/solana-release/bin/sdk/sbf/dependencies/platform-tools/rust/bin - 强制指定系统rust工具链执行
anchor test:
直接执行命令:
或者在项目根目录的ANCHOR_RUST_VERSION=stable anchor testAnchor.toml中添加配置:[rust] rustc_version = "stable"
二、Solana正确安装后的核心目录结构
Solana默认安装路径为~/.local/share/solana/install/,核心层级如下:
active_release/:软链接,指向当前正在使用的Solana版本目录(如releases/1.18.2/)bin/:存放Solana核心命令行工具(solana、solana-test-validator、solana-keygen等),也是你PATH中配置的路径
releases/:存放所有已安装的Solana版本1.18.2/:具体版本的根目录solana-release/:版本核心文件集合bin/:该版本的工具执行文件目录,与active_release/bin内容一致sdk/:开发工具包目录sbf/:Solana字节码格式相关工具目录dependencies/:依赖资源目录platform-tools/:平台工具依赖rust/:正常情况下包含bin(存放sbf交叉编译用的rustc、cargo等工具)和lib文件夹,你的报错就是因为这个bin目录缺失
三、后续排查建议
- 重新完整安装对应版本Solana,确保网络稳定避免下载中断:
sh -c "$(curl -sSfL https://release.solana.com/v1.18.2/install)" - 确认rustup已安装sbf目标工具链:
rustup target add sbf64-unknown-unknown
内容的提问来源于stack exchange,提问作者Dhruv
相关产品推荐
相关产品推荐

