与'openssl'组合输入什么都无所谓,我总是收到以下错误消息:
'openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory'
在阅读了本论坛和其他论坛中的许多问题之后,我不知道如何解决该问题。
答案 0 :(得分:4)
那一次,我只能通过创建符号链接并重建ldconfig缓存来解决它。
ln -s libssl.so.3 libssl.so
sudo ldconfig
答案 1 :(得分:1)
就我而言,它与在SLES 12.1上安装Python 3.8有关。由于OpenSSL错误,Pip安装失败。
然后我克隆了openssl存储库并从源代码构建它。
string
git clone https://github.com/openssl/openssl.git
./Configure
make
最后make install
很重要,也很需要。
然后ldconfig
应该显示响应而没有错误。至少需要openssl 1.1才能构建Python 3.5 +。
此练习后,从源代码开始的Python 3.8.5构建成功。
答案 2 :(得分:0)
使用sudo
编译并运行代码。它将起作用。
如果它不起作用,请执行以下步骤
sudo apt-get update
sudo apt-get install libssl1.0.0 libssl-dev
cd /lib/x86_64-linux-gnu
sudo ln -s libssl.so.1.0.0 libssl.so.10
sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10
答案 3 :(得分:0)
我从github编译了openssl:https://github.com/openssl/openssl。
检查(由 ./config
)生成的 Makefile,默认安装目录是 /usr/local/lib64
。
但是,在 RHEL 上,此目录不在加载库路径中。以下在 RHEL 7.9 上对我有用:
$ sudo touch /etc/ld.so.conf.d/lib.conf
# edit ld.conf file
# add a line containing `/usr/local/lib64`
$ sudo nano /etc/ld.so.conf.d/lib.conf
# update the library paths
$ sudo ldconfig
# sanity check
$ openssl version
OpenSSL 3.0.0-alpha11 28 jan 2021 (Library: OpenSSL 3.0.0-alpha11 28 jan 2021)
答案 4 :(得分:0)
很简单:
ln -s /usr/lib/vmware/lib/libssl.so.1.0.2/libssl.so.1.0.2 /usr/lib64/libssl.so.1.0.2
ln -s /usr/lib/vmware/lib/libcrypto.so.1.0.2/libcrypto.so.1.0.2 /usr/lib64/libcrypto.so.1.0.2
答案 5 :(得分:-1)
在安装Openssl 3.0之后,我遇到了同样的问题。我通过将文件libcrypto.so.3
,libcrypto.a
和libssl.so.3
从/usr/local/lib
复制到/usr/lib
解决了该问题。
复制这些文件后,您需要创建一些符号链接。
ln -s libcrypto.so.3 libcrypto.so
ln -s libssl.so.3 libssl.so
现在重建ldconfig缓存:
sudo ldconfig