nasa / GMSEC_API

15 stars 3 forks source link

RH8 5.2 Release Has Python 3.6 Dependencies #38

Open stephen-ritter opened 3 weeks ago

stephen-ritter commented 3 weeks ago

I tested this against GMSEC_API 5.2 on a UBI-8 minimal image. I get the following error when trying to import libgmsec_python3. I built 5.2 from source on a system that doesn't have Python 3.6 and I was then able to use the Python3 bindings without the Python 3.6 dependencies.

Python 3.10.13 (main, Feb 12 2024, 22:45:22) [GCC 8.5.0 20210514 (Red Hat 8.5.0-20)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import libgmsec_python3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/GMSEC/GMSEC_API/bin/lib/GMSECAPI5/libgmsec_python3.py", line 12, in <module>
    import _libgmsec_python3
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
dmwhitne-583 commented 3 weeks ago

The GMSEC API's Python binding relies on the environment variable PYTHON3_HOME, which if unset, defaults to /usr for x64 Linux distributions. [Refer to the GMSEC_API/INSTALL.txt file for more info.]

Please confirm your system's version of Python by running:

/usr/bin/python3 --version

Note, your system should include both python3 and its related development packages.

stephen-ritter commented 2 weeks ago

I tried setting PYTHON3_HOME to my installation of python3, but I still get the same error. Here is what I did:

[appuser@71840a8d234e app]$ echo $PYTHON3_HOME
/usr/local/bin/python3
[appuser@71840a8d234e app]$ ls /usr/local/bin | grep python
python
python-config
python3
python3-config
python3.10
python3.10-config
[appuser@71840a8d234e app]$ ls /usr/bin | grep python
[appuser@71840a8d234e app]$ python3
Python 3.10.13 (main, Feb 12 2024, 22:45:22) [GCC 8.5.0 20210514 (Red Hat 8.5.0-20)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import libgmsec_python3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/GMSEC/GMSEC_API/bin/lib/GMSECAPI5/libgmsec_python3.py", line 12, in <module>
    import _libgmsec_python3
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
stephen-ritter commented 2 weeks ago

I also tried a couple of other things:

Type "help", "copyright", "credits" or "license" for more information.
>>> import libgmsec_python3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/GMSEC/GMSEC_API/bin/lib/GMSECAPI5/libgmsec_python3.py", line 12, in <module>
    import _libgmsec_python3
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
>>> import os
>>> print(os.environ["PYTHON3_HOME"])
/usr/local/bin
Python 3.10.13 (main, Feb 12 2024, 22:45:22) [GCC 8.5.0 20210514 (Red Hat 8.5.0-20)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import libgmsec_python3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/GMSEC/GMSEC_API/bin/lib/GMSECAPI5/libgmsec_python3.py", line 12, in <module>
    import _libgmsec_python3
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
>>> import os
>>> print(os.environ["PYTHON3_HOME"])
/usr/local
stephen-ritter commented 2 weeks ago

Also I do have the python3 development libraries:

[appuser@d6f448d34717 app]$ ls /usr/local/lib
libpython3.10.so  libpython3.10.so.1.0  libpython3.so  pkgconfig  python3.10