我要评分
获取效率
正确性
完整性
易理解

Failed to Identify the Related Interface Symbols After the OpenSSL of a New Version Is Installed

Symptom

The following error information is displayed when executing the rpm command:

1
rpm: relocation error: /lib64/librpmio.so.8: symbol EVP_md2 version OPENSSL_1_1_0 not defined in file libcrypto.so.1.1 with link time reference

The following error information is displayed when the OpenSSL command is executed:

1
/usr/bin/openssl: relocation error: /usr/bin/openssl: symbol EVP_md2 version OPENSSL_1_1_0 not defined in file libcrypto.so.1.1 with link time reference

Key Process and Cause Analysis

If the OpenSSL dynamic library path is configured to LD_LIBRARY_PATH or the library is installed in /usr/local/lib (that is, the dynamic library search path in the /etc/ld.so.conf file is set to /usr/local/lib), when the system tool or command attempts to invoke the OpenSSL dynamic library, the original system library rather than the library installed by the user is invoked.

Conclusion and Solution

Install the OpenSSL software by following the procedure described in Installing OpenSSL/Tongsuo, and install the KAE software packages by following the procedures in Installing KAE Using RPM Packages, Installing KAE Using DEB Packages, and Installing KAE Using Source Code.

If the system needs to configure the /usr/local/lib path to the LD_LIBRARY_PATH environment variable or configure the path to /etc/ld.so.conf, specify the installation path and dynamic library path before installing the OpenSSL source code:

1
2
3
./config --prefix=/usr/local/openssl -Wl,-rpath,/usr/local/openssl/lib
make
make install
  • If the accelerator is installed in RPM mode, perform the following modification:
    1
    rpm -ivh libkae-1.0.1-1.euler2.0.aarch64.rpm --prefix=/usr/local/openssl/lib/engines-1.1
    
  • If the accelerator is installed in source code mode, run the following compilation and installation commands in sequence.
    1
    2
    3
    4
    5
    cd KAE
    chmod +x configure
    ./configure --openssl_path=/usr/local/openssl
    make clean && make
    make install