Anchor构建失败求助:libssl.so.1.1缺失问题解决方法
解决Anchor Build时libssl.so.1.1缺失的问题
错误原因
你的系统大概率使用了较新的libssl版本(比如Ubuntu 22.04及以上默认是libssl3),但当前使用的Solana 1.10.34版本的BPF工具链依赖旧版的libssl.so.1.1动态库。安装libssl-dev仅提供开发头文件,不会自动安装旧版本的运行库,因此问题无法解决。
解决方法
方法一:手动安装libssl1.1包(Debian/Ubuntu系适用)
针对Ubuntu 22.04及以上这类默认不带libssl1.1的系统:
- 下载对应架构的deb包(以64位为例):
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.20_amd64.deb - 安装包:
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2.20_amd64.deb - 验证安装成功:
若输出文件路径,说明安装成功,重新执行ls /usr/lib/x86_64-linux-gnu/libssl.so.1.1anchor build即可。
方法二:创建软链接(如果系统已有libssl.so.1.1)
如果系统内存在libssl.so.1.1但工具链无法识别:
- 查找文件位置:
sudo find / -name "libssl.so.1.1" 2>/dev/null - 假设找到路径为
/usr/local/lib/libssl.so.1.1,创建软链接到系统默认库目录:sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libssl.so.1.1 - 更新动态链接缓存:
之后重新尝试sudo ldconfiganchor build。
方法三:更新Solana和Anchor到新版本
旧版本Solana对libssl版本兼容性较差,更新到稳定版可解决依赖问题:
- 更新Solana CLI:
solana-install update - 更新Anchor CLI:
cargo install --git https://github.com/coral-xyz/anchor anchor-cli --force - 重新执行
anchor build
内容的提问来源于stack exchange,提问作者niico
相关产品推荐
相关产品推荐

