我正在尝试运行一个使用 libcrypto 和 libsll 库的可执行文件。当我运行可执行文件时,出现以下错误
PROGRAM: error while loading shared libraries: libcrypto.so.10: cannot open shared object file: No such file or directory
据我了解,上述消息是因为可执行文件找不到关联的库。该系统在“/usr/lib/x86_64-linux-gnu”中包含两对库,我使用突触包管理器安装了它们。我尝试生成符号链接
ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/lib/x86_64-linux-gnu/libcrypto.so.10
ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 /usr/lib/x86_64-linux-gnu/libcrypto.so.10
ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so /usr/lib/x86_64-linux-gnu/libcrypto.so.10
但在所有这些情况下,我都会收到以下错误消息:
PROGRAM: /usr/lib/x86_64-linux-gnu/libcrypto.so.10: version `libcrypto.so.10' not found (required by PROGRAM)
我目前使用的是 Ubuntu 20.0,我尝试使用的可执行文件是为 RHEL 6.6 编译的。我的问题是:我应该安装 RHEL(或 centOS)才能使用该可执行文件吗?或者,该错误是由于我使用了错误版本的库造成的。
答案1
yum reinstall openssl-libs
yum update openssh-clients
运行这些命令,你就会解决这个问题。