Rust、OpenSSL、solana-test-validator 库未加载问题
Posted
技术标签:
【中文标题】Rust、OpenSSL、solana-test-validator 库未加载问题【英文标题】:Rust, OpenSSL, solana-test-validator library not loaded issue 【发布时间】:2021-09-15 15:00:44 【问题描述】:我在 Mac(M1) Big Sur 11.4,Homebrew 版本 3.2,OpenSSL@1.1
我尝试在他们的README 中运行 solanar-test-validator ,我用自制软件安装了open ssl,然后我链接了openssl
sudo ln -s /opt/homebrew/opt/openssl@1.1/lib/libcrypto.1.1.dylib /usr/local/opt/openssl@1.1/lib/
当我运行 solana validate 时,出现错误
【问题讨论】:
【参考方案1】:您需要使用 Rosetta,如 https://github.com/solana-labs/solana#1-install-rustc-cargo-and-rustfmt 的自述文件中所述
目前还没有原生 M1 版本。
【讨论】:
谢谢,我在很多群里问过,但没有答案。我会试试你的答案。 按照 solana 中的说明操作后出现新错误:` 账本位置:test-ledger 日志:test-ledger/validator.log ⠙ 正在初始化... zsh:非法硬件指令 solana-test-validator `。我发现很多人都有同样的问题。看起来 solana 使用的依赖项在 M1 上仍然无法顺利运行。我认为 solana 开发团队应该更加努力地解决这个问题。【参考方案2】:没有罗塞塔:
获取
git clone https://github.com/solana-labs/solana.git
构建
cd solana/validator
在solana/validator
echo '#!/usr/bin/env bash
here="$(dirname "$0")"
set -x
exec cargo build --release --manifest-path="$here"/Cargo.toml --bin solana-test-validator -- "$@"' > solana-test-validator
./solana-test-validator
测试
cd ../target/release
在solana/target/release
./solana-test-validator
链接
由于我将它与原始安装的 solana 工具一起使用,我将路径添加到我的 shell 配置(在 mac 上为 ~/.zshrc 或 ~/.bash_profile)。只需确保在输入 $which solana-test-validator
后能够找到二进制文件或符号链接即可
我添加到我的 .zshrc 中的内容:
export PATH="/Users/lain/git/solana/solana-src/target/release:$PATH"
当然,替换用户。
Source and full credit
【讨论】:
以上是关于Rust、OpenSSL、solana-test-validator 库未加载问题的主要内容,如果未能解决你的问题,请参考以下文章
如何让Rust的openssl crate解密来自对称加密gem的数据而没有Node Crypto自动删除的乱码?