Open Source Development

 View Only

 python3.12-libdnf 64-bit version for AIX 7.2

Lionel Widmer's profile image
Lionel Widmer posted 07/27/26 09:40 AM

Hi,

On AIX 7.2, AIX_Toolbox do not provide a 64-bit version of libdnf, which make /opt/freeware/bin/python3 (which is symlinked to /opt/freeware/bin/python3.12) unusable in our Ansible playbooks

root@SERVER:/root/ # ls -ltr /opt/freeware/bin/python3
lrwxrwxrwx    1 root     system           10 Jul 27 14:36 /opt/freeware/bin/python3 -> python3.12
root@SERVER:/root/ # /opt/freeware/bin/python3 -m dnf
Traceback (most recent call last):
  File "<frozen runpy>", line 189, in _run_module_as_main
  File "<frozen runpy>", line 148, in _get_module_details
  File "<frozen runpy>", line 112, in _get_module_details
  File "/opt/freeware/lib/python3.12/site-packages/dnf/__init__.py", line 32, in <module>
    import dnf.base
  File "/opt/freeware/lib/python3.12/site-packages/dnf/base.py", line 29, in <module>
    import libdnf.transaction
  File "/opt/freeware/lib/python3.12/site-packages/libdnf/__init__.py", line 8, in <module>
    from . import error
  File "/opt/freeware/lib/python3.12/site-packages/libdnf/error.py", line 10, in <module>
    from . import _error
ImportError: Could not load module /opt/freeware/lib/python3.12/site-packages/libdnf/_error.so.
System error: Exec format error
root@SERVER:/root/ #

Would it be possible to provide python3.12-libdnf 64-bit package, like on AIX 7.3 AIX_Toolbox repo ?

I can use /opt/freeware/bin/python3 successfully, but Ansible 2.16 requires Python3.12 or later for some modules (like get_url)

And with latset OpenSSL fixes, the latest Python3.9 version provided in AIX_Toolbox for AIX7.2 is not working and throws the following error in ansible.builtin.get_url : "Connection failure: [ASN1: NOT_ENOUGH_DATA] not enough data (_ssl.c:4192)". This issue has already been addressed by RedHat but not yet by IBM

Thanks for your help and best regards

Lionel

Lakshmi Surekha Kovvuri's profile image
Lakshmi Surekha Kovvuri

Hi Lionel,

on AIX 7.1 and AIX 7.2, RPM and its associated libraries are available only in 32-bit mode. so, dnf and libdnf are also 32-bit. Therefore, the Python interpreter used to execute DNF-related modules must also be the 32-bit interpreter.
For AIX 7.2, the supported interpreter is: /opt/freeware/libexec/python3.12_32
Using the 64-bit interpreter (/opt/freeware/bin/python3) with the 32-bit libdnf libraries will result in the Exec format error that you are seeing.