Building OFED from the tgz file on RedHat 8

I’m getting a lot of errors when running mlnxofedinstall on RHEL 8. Some are related to scripts not having python3 in them (/usr/bin/python is specified instead) and the mlnx_ofa_kernel install says there is an empty debug source list file. Is there a trick to building using mlnxofedinstall on RHEL 8?

Hello Anthony,

Many thanks for posting your question on the Mellanox Community.

To rebuild the MLNX_OFED driver version 4.6-1.0.1.0 (RHEL 8 BETA Support), please install the following additional packages. After that you can use the ‘–add-kernel-support’ option to rebuild/install the MLNX_OFED driver.

The required packages for rebuilding the driver for a non-default kernel in RHEL 8.0 are the following packages:

  • perl pciutils python2 gcc-gfortran python3-libxml2 tcsh expat glib2 tcl libstdc++ bc tk gtk2 atk cairo numactl pkgconfig ethtool lsof createrepo rpm-build kernel-headers kernel-devel elfutils-libelf-devel python36 python36-devel kernel-rpm-macros

You will notice that some of the packages are already installed by default on the OS.

Example output for comparison:

dnf install perl pciutils python2 gcc-gfortran python3-libxml2 tcsh expat glib2 tcl libstdc++ bc tk gtk2 atk cairo numactl pkgconfig ethtool lsof createrepo rpm-build kernel-headers kernel-devel elfutils-libelf-devel python36 python36-devel kernel-rpm-macros

Updating Subscription Management repositories.

Last metadata expiration check: 1:54:11 ago on Tue 23 Jul 2019 06:45:34 PM EDT.

Package perl-4:5.26.3-416.el8.x86_64 is already installed.

Package pciutils-3.5.6-4.el8.x86_64 is already installed.

Package python2-2.7.15-22.module+el8.0.0+2961+596d0223.x86_64 is already installed.

Package gcc-gfortran-8.2.1-3.5.el8.x86_64 is already installed.

Package python3-libxml2-2.9.7-5.el8.x86_64 is already installed.

Package tcsh-6.20.00-9.el8.x86_64 is already installed.

Package expat-2.2.5-3.el8.x86_64 is already installed.

Package glib2-2.56.4-1.el8.x86_64 is already installed.

Package tcl-1:8.6.8-2.el8.x86_64 is already installed.

Package libstdc+±8.2.1-3.5.el8.x86_64 is already installed.

Package bc-1.07.1-5.el8.x86_64 is already installed.

Package tk-1:8.6.8-1.el8.x86_64 is already installed.

Package gtk2-2.24.32-4.el8.x86_64 is already installed.

Package atk-2.28.1-1.el8.x86_64 is already installed.

Package cairo-1.15.12-3.el8.x86_64 is already installed.

Package numactl-2.0.12-2.el8.x86_64 is already installed.

Package pkgconf-pkg-config-1.4.2-1.el8.x86_64 is already installed.

Package ethtool-2:4.16-1.el8.x86_64 is already installed.

Package lsof-4.91-2.el8.x86_64 is already installed.

Package createrepo_c-0.11.0-1.el8.x86_64 is already installed.

Package rpm-build-4.14.2-9.el8.x86_64 is already installed.

Package kernel-headers-4.18.0-80.4.2.el8_0.x86_64 is already installed.

Package kernel-devel-4.18.0-80.4.2.el8_0.x86_64 is already installed.

Package elfutils-libelf-devel-0.174-6.el8.x86_64 is already installed.

Package python36-3.6.8-2.module+el8.0.0+2975+e0f02136.x86_64 is already installed.

Package python36-devel-3.6.8-2.module+el8.0.0+2975+e0f02136.x86_64 is already installed.

Package kernel-rpm-macros-116-1.el8.noarch is already installed.

Dependencies resolved.

Nothing to do.

Complete!

uname -r && ofed_info -s

4.18.0-80.4.2.el8_0.x86_64

MLNX_OFED_LINUX-4.6-1.0.1.1:

Many thanks,

~Mellanox Technical Support

I have those packages installed. When the installer is processing the ofed-scripts package, the program /usr/lib/rpm/redhat/brp-mangle-shebangs shows the following error and the build fails:

ERROR: ambiguous python shebang in /usr/sbin/sysinfo-snapshot.py: #/usr/bin/python. Change it to python3 (or python2) explicitly.

RHEL 8 changes specify that you must specify the version and not just python.

I fixed all the scripts to point to the correct python, but when I get to the next package, ofa-kernel, there is an error I can’t get past. The installer complains about an empty file called /var/tmp/OFED_topdir/BUILD/mlnx-ofa_kernel-4.6/debugsourcefiles.list and the build fails.

Thanks.

RedHawk 8 kernel is installed on the system and has changed the contents of /etc/os-release which was causing the RHEL8 modifications to not be made to the scripts. I fixed that and am still getting the empty debugsourcefiles.list error when processing mlnx-ofa_kernel-debugsource…

Thanks.