Ubuntu : error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file

文章讲述了在Ubuntu22.04LTS系统中,运行curl命令时遇到找不到libcrypto.so.1.0.0共享库的错误。解决方案是通过查找库文件并创建软链接到curl期望的位置。具体步骤包括定位curl安装位置,查找缺失文件,然后在anaconda3/lib下创建软链接。这样解决了curl运行时找不到依赖的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ubuntu 22.04 LTS 运行Curl 时出现报错

 curl
 curl: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory

解决办法

  • 如果能找到这个文件:libcrypto.so.1.0.0,则通过建立软链接的方式;如果不能,则尝试重新安装。

1.先找到curl所在的目录

which curl

输出得到:

/home/obs/anaconda3/bin/curl

确保,curl是正常安装成功的,可以发现我的curl是安装在/home/obs/anaconda3/bin/这个路径下

2、查找libcrypto.so.1.0.0 是否存在,存在的路径

find ~ -name libcrypto.so.1.0.0

输出得到:

/home/obs/anaconda3/pkgs/openssl-1.0.2p-h14c3975_0/lib/libcrypto.so.1.0.0

问题分析

能输出报错缺少的目标文件所在的路径信息,说明我的机器上已经安装了该文件,所以只是在curl运行时找到这个文件,所以发生上述报错

  • 我们需要做的就是让curl找到这个文件,而curl对于上述缺失的信息一般存放在~/anaconda3/lib下,所以我们要在该lib下建立一个上述缺失的文件,这可以通过软连接的方式实现
ln -sf /home/obs/anaconda3/pkgs/openssl-1.0.2p-h14c3975_0/lib/libcrypto.so.1.0.0   /home/obs/anaconda3/lib/libcrypto.so.1.0.0

如上所示,这部分命令包含两个路径,一个是已经找到的libcrypto.so.1.0.0 所在路径;第二个是想要将libcrypto.so.1.0.0链接的目标路径,即anaconda3/lib/下。

如此,可以发现curl能够正常运行了
在这里插入图片描述

总结

在Linux上运行一些指令时,经常会发生xxxxx: cannot open shared object file的报错信息,如果下次在运行其他指令时也出现了类似的问题,可以尝试上述解决流程;也可以考虑重新安装相关软件。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

简朴-ocean

继续进步

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值