繁体   English   中英

Cargo 构建 (BPF) 卡住了

[英]Cargo build (BPF) stuck

我正在 Ubuntu 20.04 上部署Solana helloworld示例智能合约。 当运行npm run build:program-rust时,存储库根目录中的package.json指出这对应于cargo build-bpf --manifest-path=./src/program-rust/Cargo.toml --bpf-out-dir=dist/program 但是,运行此命令时,即使将详细标记附加到 cargo build 命令,编译也会卡住,没有任何指示器。

我全新安装了 Ubuntu 20.04,只执行了以下步骤:

  • sudo apt update && sudo apt upgrade
  • 安装 NodeJS v14.x 和 build-essential
  • 安装 Rust: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  • 安装 Solana CLI: sh -c "$(curl -sSfL https://release.solana.com/v1.8.6/install)"
  • git clone https://github.com/solana-labs/example-helloworld.git

运行which cargo-build-bpf时, Ubuntu 指向目录~/.local/share/solana/install/releases/1.8.6/solana-release/bin/cargo-build-bpf ,说明PATH变量已经正确更新。

Cargo.toml 文件如下所示:

[package]
name = "solana-bpf-helloworld"
version = "0.0.1"
description = "Example template program written in Rust"
authors = ["Solana Maintainers <maintainers@solana.com>"]
repository = "https://github.com/solana-labs/solana"
license = "Apache-2.0"
homepage = "https://solana.com/"
edition = "2018"

[features]
no-entrypoint = []

[dependencies]
borsh = "0.9.3"
borsh-derive = "0.9.1"
solana-program = "~1.10.35"

[dev-dependencies]
solana-program-test = "~1.10.35"
solana-sdk = "~1.10.35"

[lib]
name = "helloworld"
crate-type = ["cdylib", "lib"]

昨天,我尝试删除 Cargo.lock 文件并运行cargo update 它在尝试检索也在Borsh文件中指定的 Borsh crate 时卡住了。 我不完全知道这有什么关系,但似乎值得指出。

第一次运行cargo build-bpf时,该命令会自动获取构建程序所需的 SDK,这可能需要一些时间。 不幸的是,没有任何迹象表明这种情况正在发生。

您可能需要重新安装 Solana CLI,重试,并确保等待足够长的时间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM