KX Community

Find answers, ask questions, and connect with our KX Community around the world.
KX Community Guidelines

Home Forums PyKX OpenSSL 3.0.8 not compatible with PyKX?

  • OpenSSL 3.0.8 not compatible with PyKX?

    Posted by eohara_kdb on July 3, 2023 at 12:00 am

    Hi all,

     

    We’ve installed PyKX with pip on an Amazon Linux EC2 instance, and when importing the package in a python session there are some "libcrypto* missing" errors. It seems like these might be associated with OpenSSL 1.1, whereas we have 3.0.8.

    Is a certain version of OpenSSL required to load PyKX, or could this be some other issue?

    Linux version:

    [ec2-user@ip-172-31-23-74 ~]$ cat /etc/os-release
    NAME="Amazon Linux"
    VERSION="2023"
    ID="amzn"
    ID_LIKE="fedora"
    VERSION_ID="2023"
    PLATFORM_ID="platform:al2023"
    PRETTY_NAME="Amazon Linux 2023"
    ANSI_COLOR="0;33"
    CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2023"
    HOME_URL="https://aws.amazon.com/linux/"
    BUG_REPORT_URL="https://github.com/amazonlinux/amazon-linux-2023"
    SUPPORT_END="2028-03-01"

    OpenSSL yum package version:

    [ec2-user@ip-172-31-23-74 ~]$ sudo yum info openssl
    Last metadata expiration check: 17:54:31 ago on Sun Jul 2 20:21:14 2023.
    Installed Packages
    Name : openssl
    Epoch : 1
    Version : 3.0.8
    Release : 1.amzn2023.0.3
    Architecture : x86_64
    Size : 1.8 M
    Source : openssl-3.0.8-1.amzn2023.0.3.src.rpm
    Repository : @System
    Summary : Utilities from the general purpose cryptography library with TLS implementation
    URL : http://www.openssl.org/
    License : ASL 2.0
    Description : The OpenSSL toolkit provides support for secure communications between
    : machines. OpenSSL includes a certificate management tool and shared
    : libraries which provide various cryptographic algorithms and
    : protocols.

    Location of "*crypto.so*" files:

    [ec2-user@ip-172-31-23-74 ~]$ sudo find / -name "*crypto.so*"
    /usr/lib64/libk5crypto.so.3
    /usr/lib64/libk5crypto.so.3.1
    /usr/lib64/libcrypto.so.3.0.8
    /usr/lib64/libcrypto.so.3

    Location added to LD_LIBRARY_PATH:

    [ec2-user@ip-172-31-23-74 ~]$ echo $LD_LIBRARY_PATH
    /usr/lib64:

    Importing PyKX in Python:

    [ec2-user@ip-172-31-23-74 ~]$ python3
    Python 3.9.16 (main, Feb 23 2023, 00:00:00)
    [GCC 11.3.1 20221121 (Red Hat 11.3.1-4)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import pykx as kx
    dlopen attempts failed:
    dlopen("crypto.so") -> crypto.so: cannot open shared object file: No such file or directory
    dlopen("libcrypto.so") -> libcrypto.so: cannot open shared object file: No such file or directory
    dlopen("libcrypto.so.1.1") -> libcrypto.so.1.1: cannot open shared object file: No such file or directory
    dlopen("libcrypto.so.1.0.2k") -> libcrypto.so.1.0.2k: cannot open shared object file: No such file or directory
    dlopen("libcrypto.so.1.0.0") -> libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
    dlopen("libcrypto.so.0") -> libcrypto.so.0: cannot open shared object file: No such file or directory
    /home/ec2-user/.local/lib/python3.9/site-packages/pykx/embedded_q.py:65: PyKXWarning: Failed to load KX Insights Core library 'kurl.q': unable to load libcrypto
    warn(f'Failed to load KX Insights Core library {lib!r}: {msg.decode()}',

    Thanks,

    Eoghan

    eohara_kdb replied 9 months, 3 weeks ago 2 Members · 1 Reply
  • 1 Reply

Log in to reply.