小编wxe*_*123的帖子

当我拥有最新的 rustc 和 Cargo 版本时,为什么会出现解析器功能的构建错误?

当我运行构建命令时

cargo build-bpf --manifest-path=Cargo.toml --bpf-out-dir=dist/program 
Run Code Online (Sandbox Code Playgroud)

错误:下载失败solana-frozen-abi v1.7.9

原因:无法从源获取包

原因:无法解析清单/home/USER/.cargo/registry/src/github.com-1ecc6299db9ec823/solana-frozen-abi-1.7.9/Cargo.toml

原因:resolver需要功能

有人遇到过类似的问题,但原因是旧的 rustc 版本。我的看起来不错

rustc --version
rustc 1.55.0-nightly (7c3872e6b 2021-06-24)

cargo --version
cargo 1.55.0-nightly (9233aa06c 2021-06-22)
Run Code Online (Sandbox Code Playgroud)

我的 Cargo.toml 文件看起来像

[package]
name = "test"
version = "0.0.1"
edition = "2018"
exclude = ["tests/**"]

[features]
no-entrypoint = []
test-bpf = []

[dependencies]
borsh = "0.8.2"
num-derive = "0.3"
num-traits = "0.2"
solana-program = "1.6.10"
spl-token = { version="3.1.1", features = [ "no-entrypoint" ] }
thiserror = "1.0"

[dev-dependencies]
solana-program-test …
Run Code Online (Sandbox Code Playgroud)

rust rust-cargo solana

7
推荐指数
2
解决办法
4509
查看次数

如何设置 solana-test-validator 的日志记录?

我在这里跟随 - https://docs.solana.com/developing/on-chain-programs/debugging

我已将这一行包含在 .bashrc 中

export RUST_LOG=solana_runtime::system_instruction_processor=trace,solana_runtime::message_processor=info,solana_bpf_loader=debug,solana_rbpf=debug
Run Code Online (Sandbox Code Playgroud)

当我将程序部署到 solana-test-validator 并调用该函数时,程序成功完成,但是 msg! Rust 程序中的调用不会在控制台中打印。

我收到以下命令未找到错误。我必须配置 github 货物注册表吗?

$RUST_LOG
solana_runtime::system_instruction_processor=trace,solana_runtime::message_processor=info,solana_bpf_loader=debug,solana_rbpf=debug: command not found
Run Code Online (Sandbox Code Playgroud)

rust rust-cargo solana

5
推荐指数
1
解决办法
3660
查看次数

如何使用 Solana keygen 中的密钥来使用网络钱包?

我运行了这个 CLI 命令

solana-keygen new --outfile ~/my-solana-wallet/my-keypair.json
Run Code Online (Sandbox Code Playgroud)

并复制了公钥、BIP39 密码和 12 个种子词。当我将种子词复制到 phantom 和 sollet 中时,它显示空帐户。我将 SOL 发送到该公钥地址,但担心我丢失了它。

如何通过 sollet 或 phatom 钱包访问我的帐户?

phantomjs solana

4
推荐指数
1
解决办法
1万
查看次数

测试时出现“调用上下文未设置错误”是怎么回事?

当我在此代码上运行 Cargo test-bpf --manifest-path=./Cargo.toml 时

#[tokio::test]
async fn test_init_mapping() {
    let program_id = Pubkey::new_unique();
    let mut init_map_test = ProgramTest::new(
        "simple", // Run the BPF version with `cargo test-bpf`
        program_id,
        processor!(process_instruction), 
    );
    let main_pubkey = Pubkey::new_unique();
    let main_account = Account {
        lamports: 100,
        owner: program_id,
        ..Account::default()
    };
    init_map_test.add_account(main_pubkey, main_account);
    let (mut banks_client, payer, recent_blockhash) = init_map_test.start().await;
}
Run Code Online (Sandbox Code Playgroud)

我收到这个错误。

线程“test_init_mapping”因“调用上下文未设置!”而惊慌失措。**

我不知道如何调试这个,所以任何帮助都很棒。我已将问题范围缩小到最后一行。我的项目中一定有其他地方设置错误吗?

我不认为这段代码有问题,因为它是从 helloworld 示例中复制粘贴的。

编辑:我留下了原始问题的重要细节。在最后一行之后,我收到了 msg!("started"); ,我认为无关紧要,所以将其排除在外

rust rust-cargo solana

0
推荐指数
1
解决办法
347
查看次数

标签 统计

solana ×4

rust ×3

rust-cargo ×3

phantomjs ×1