如何解决 cargo build-bpf 不工作?

How to solve cargo build-bpf nor working?

我尝试构建一个 Rust 项目,当我尝试在 VS Code 终端上执行 cargo build-bpf --manifest-path=contracts/solana/program/Cargo.toml --bpf-out-dir=dist/solana/program 时,我收到了这个错误:Can't get home directory path: environment variable not found。 关于如何解决它的任何想法?我不知道需要多少细节才能理解这个问题(我是 Rust 的新手),但如果你问我可以添加更多。

cargo build-bpf 需要设置 HOME 环境变量才能工作。要解决此问题,您有几种选择:

  • 将 VS Code 切换为使用 Bash-supported shell。这将是您最简单的选择,然后将始终设置 HOME。有关如何执行此操作的更多信息,请访问:
  • 在 Powershell 中自己设置 HOME 变量,使用如下:
$Env:Home = "c:\path\to\my\work\dir"

老实说,我不能 100% 确定第二个选项是否有效。

有关您在 cargo-build-bpf 源代码中看到的特定错误的更多信息:https://github.com/solana-labs/solana/blob/d5dec989b93fc94c9416a60193e52e8b68bd7133/sdk/cargo-build-bpf/src/main.rs#L474