openssl: relocation error: openssl: symbol EVP_md2 version OPENssL_1_1_0 not defined in file libcrypto.so.1.1 with link time reference
时间: 2024-05-10 10:16:33 浏览: 308
这个错误通常是因为系统上安装了多个版本的 OpenSSL 库,而程序链接到了不兼容的版本。您可以尝试以下解决方法:
1. 确认您的程序使用的 OpenSSL 版本与系统安装的 OpenSSL 版本一致。可以使用以下命令查看系统上安装的 OpenSSL 版本:
```
$ openssl version
```
2. 如果您的程序没有指定使用的 OpenSSL 版本,可以尝试设置 LD_LIBRARY_PATH 环境变量,将正确的 OpenSSL 库路径放在前面,例如:
```
$ export LD_LIBRARY_PATH=/path/to/correct/openssl/lib:$LD_LIBRARY_PATH
```
3. 如果您的程序是在编译时链接到 OpenSSL 库的,可以尝试使用正确的 OpenSSL 库路径重新编译程序。例如:
```
$ gcc -o program program.c -L/path/to/correct/openssl/lib -lssl -lcrypto
```
希望这些解决方法能够帮助您解决问题。
阅读全文