rust-gpu工具链版本不匹配求助:配置一致仍报错
Rust-GPU工具链提交哈希不匹配问题排查
问题详情
已按要求复制指定内容的rust-toolchain文件到项目根目录,但执行cargo run构建时,仍触发工具链提交哈希不匹配错误,且本地配置文件内容与错误提示要求完全一致。
本地rust-toolchain文件内容
# If you see this, run `rustup self update` to get rustup 1.23 or newer. # NOTE: above comment is for older `rustup` (before TOML support was added), # which will treat the first line as the toolchain name, and therefore show it # to the user in the error, instead of "error: invalid channel name '[toolchain]'". [toolchain] channel = "nightly-2022-10-29" components = ["rust-src", "rustc-dev", "llvm-tools-preview"] # commit_hash = 9565dfeb4e6225177bbe78f18cd48a7982f34401 # Whenever changing the nightly channel, update the commit hash above, and make # sure to change REQUIRED_TOOLCHAIN in crates/rustc_codegen_spirv/src/build.rs also.
构建错误信息
error: failed to run custom build command for `rustc_codegen_spirv v0.4.0-alpha.17 (https://github.com/EmbarkStudios/rust-gpu#fabcbd9c)` Caused by: process didn't exit successfully: `/home/makogan/rust_never_engine/target/debug/build/rustc_codegen_spirv-b4185236522e0515/build-script-build` (exit status: 1) --- stdout cargo:rerun-if-env-changed=RUSTGPU_SKIP_TOOLCHAIN_CHECK --- stderr error: wrong toolchain detected (found commit hash `e631891f7ad40eac3ef58ec3c2b57ecd81e40615`, expected `9565dfeb4e6225177bbe78f18cd48a7982f34401`). Make sure your `rust_toolchain` file contains the following: ------------- [toolchain] channel = "nightly-2022-10-29" components = ["rust-src", "rustc-dev", "llvm-tools-preview"]
解决办法
- 启用指定的commit_hash:当前配置中
commit_hash被注释,仅指定日期的nightly可能存在多个构建版本,rustup可能拉取了同日期但不同哈希的版本。取消注释commit_hash行,强制使用要求的工具链版本:commit_hash = 9565dfeb4e6225177bbe78f18cd48a7982f34401 - 清理并重新安装工具链:已安装的旧工具链可能仍被调用,执行以下命令重置:
rustup toolchain uninstall nightly-2022-10-29 rustup show - 更新rustup版本:旧版rustup对TOML格式的
rust-toolchain支持可能存在问题,执行rustup self update升级到最新版本,确保配置能被正确解析。 - 确认文件命名与位置:确保文件名为
rust-toolchain(而非rust-toolchain.toml),且放置在项目根目录,避免rustup无法识别配置。
内容的提问来源于stack exchange,提问作者Makogan
相关产品推荐
相关产品推荐

