[LU-15466] Need python2 installed into the maloo RHEL7 images for ZFS 2.0.7 support Created: 20/Jan/22  Updated: 10/Aug/22

Status: Reopened
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.15.0
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: James A Simmons Assignee: Minh Diep
Resolution: Unresolved Votes: 0
Labels: None
Environment:

RHLE7.X


Attachments: File always-pyzfs.m4    
Issue Links:
Related
is related to LU-15422 Update ZFS version to 2.0.7 Resolved
Rank (Obsolete): 9223372036854775807

 Description   

ZFS 2.0.7 has a dependency on python2 which is missing for the maloo RHLE7 test platform. It prevents the building of ZFS 2.0.7 for RHEL7 on the whamcloud systems.



 Comments   
Comment by James A Simmons [ 24/Jan/22 ]

Still seeing:

configure: error: "Python 2.7 packaging and distlib modules are not installed"

when building patch https://review.whamcloud.com/46006 "LU-15422 build: Update ZFS version to 2.0.7"

Comment by Minh Diep [ 28/Jan/22 ]

simmonsja, it's not clear to me what the name of the package that we need to install

Comment by Andreas Dilger [ 31/Jan/22 ]

I ran the zfs-2.0.7 configure in my RHEL7.9 VM and the error doesn't really seem to be with the distlib, but a later check:

configure:16457: checking for python2 module: packaging
configure:16467: result: no
configure:16472: checking for python2 module: distlib
configure:16482: result: no
configure:17005: checking whether to enable pyzfs:
configure:17007: result: no

It might be that the RPM building is using "--enable pyzfs" or similar that is triggering the earlier error when distlib can't be found? Yum tells me there is a python36-distlib.noarch RPM (which drags in python3), but I don't see RPMs for python2.

I was able to get distlib installed by first installing python2-pip and then running "pip install distlib". This got me to:

configure:16457: checking for python2 module: packaging
configure:16467: result: no
configure:16472: checking for python2 module: distlib
configure:16476: result: yes
configure:16527: checking for python2.7
configure:16545: found /usr/bin/python2.7
configure:16557: result: /usr/bin/python2.7
configure:16583: checking for a version of Python >= '2.1.0'
configure:16618: result: yes
configure:16626: checking for a version of Python >= '2.7.0'
configure:16644: result: yes
configure:16667: checking for the distutils Python package
configure:16671: result: yes
configure:16693: checking for Python include path
configure:16709: result: -I/usr/include/python2.7
configure:16716: checking for Python library path
configure:16801: result: -L/usr/lib64 -lpython2.7
configure:16808: checking for Python site-packages path
configure:16814: result: /usr/lib/python2.7/site-packages
configure:16821: checking python extra libraries
configure:16828: result: -lpthread -ldl  -lutil -lm
configure:16835: checking python extra linking flags
configure:16842: result: -Xlinker -export-dynamic
configure:16849: checking consistency of all components of python development environment
configure:16877: gcc -o conftest -g -O2  -I/usr/include/python2.7  -Xlinker -export-dynamic conftest.c  -L/usr/lib64 -lpython2.7 -lpthread -ldl  -lutil -lm -lpthread -ldl  -lutil -lm >&5
conftest.c:57:22: fatal error: Python.h: No such file or directory
   #include <Python.h>
:
configure:16895: result: no
configure:17005: checking whether to enable pyzfs: 
configure:17007: result: no

which needs the python2-devel and also python-cffi RPMs installed. After that, it looks like pyzfs is enabled for build, though I haven't actually built it yet.

Comment by James A Simmons [ 03/Feb/22 ]

It builds now. Thank you Minh.

Comment by Andreas Dilger [ 10/Aug/22 ]

This failed for a builder today, likely missing the rpm:

https://build.whamcloud.com/job/lustre-reviews/88930/arch=x86_64,build_type=server,distro=el7.9,ib_stack=inkernel/console

And also:

https://build.whamcloud.com/job/lustre-reviews/88931/arch=x86_64,build_type=server,distro=el7.9,ib_stack=inkernel/console

Generated at Sat Feb 10 03:18:33 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.