问题缘起
最近打算将openssl升级至3.x,但是期间遇到了一些问题,问题如下:
openssl: error while loading shared libraries: libssl.so.3: cannot open shared object file: No such file or directory
openssl: error while loading shared libraries: libcrypto.so.3: cannot open shared object file: No such file or directory
意思就是找不到libssl.so.3
和libcrypto.so.3
。
解决方案
创建软链接,但是要注意位置
具体步骤
- 明确openssl安装的位置,例如安装位置是:
/usr/local/openssl
,那么这两个文件的位置就是/usr/local/openssl/lib/libssl.so.3
以及/usr/local/openssl/lib/libcrypto.so.3
。 - 为第一个文件创建软链接。命令如下:
其中,ln表示创建软链接,f参数表示覆盖创建,前面那个文件地址表示openssl中的实际文件,需要看实际的openssl安装地址,后面的那个文件地址表示目标软链接存在的位置。类比window中的快捷方式就很清楚了。ln -sf /usr/local/openssl/lib/libssl.so.3 /usr/lib/libssl.so.3
这里一定要注意:后面的地址是
/usr/lib
,不是/usr/local/lib
,也不是/usr/lib64
- 为第二个文件创建软链接,过程与上面类似,但是软链接的位置不一样。命令如下:
ln -sf /usr/local/openssl/lib/libcrypto.so.3 /usr/lib64/libssl.so.3
这里一定要注意:后面的地址是
/usr/lib64