Packaging templates for yum
, dnf
, and zypper
based Linux distros to build libnvidia-nscq packages.
NVIDIA NVSwitch Configuration and Query (NSCQ) library provides a stable driver API used by DCGM for monitoring NVSwitch devices.
note: the version of libnvidia-nscq must match the NVIDIA driver installed.
This repo contains the .spec
file used to build the following RPM packages:
note:
XXX
is the first.
delimited field in the driver version, ex:525
in525.85.12
- libnvidia-nscq-XXX
> ex: libnvidia-nscq-525-525.85.12-1.x86_64.rpm
-
RHEL8, RHEL9, or Fedora streams:
XXX
,XXX-dkms
,latest
, andlatest-dkms
The NvSwitch modularity profile (
fm
) installs all of the NVIDIA driver packages, as well as Fabric Manager and NCSQdnf module install nvidia-driver:${stream}/fm
-
RHEL7
yum install libnvidia-nscq-XXX
-
openSUSE15 or SLES15
zypper install libnvidia-nscq-XXX
Supported branches as described in the NVIDIA Datacenter Drivers documentation.
git clone https://github.com/NVIDIA/yum-packaging-libnvidia-nscq
-
https://developer.download.nvidia.com/compute/nvidia-driver/redist/libnvidia_nscq/
ex: libnvidia_nscq-linux-x86_64-525.85.12-archive.tar.xz
note: these are only needed for building not installation
# objdump
yum install binutils
# Packaging
yum install rpm-build
baseURL="https://developer.download.nvidia.com/compute/nvidia-driver/redist"
downloadURL=$(curl -s $baseURL/redistrib_525.85.12.json | \
jq -r '."libnvidia_nscq" | ."linux-x86_64" | ."relative_path"' | \
sed "s|^|$baseURL/|")
curl -O $downloadURL
cd yum-packaging-libnvidia-nscq
mkdir SPECS SOURCES
cp *.spec SPECS/
cp ../libnvidia_nscq*.tar.xz SOURCES/
tar -tvf SOURCES/libnvidia_nscq*.tar.xz | \
grep ^l | awk '{print $(NF-2)}' | grep ".so." | \
sort -uVr | awk -F ".so." '{print $2}' | awk NR==1
> 2.0
tar -C SOURCES/ -xf SOURCES/libnvidia_nscq*.tar.xz
objdump -p /dev/stdin < $(find SOURCES -type f -name "libnvidia-nscq.so.*") | \
grep SONAME | awk -F ".so." '{print $2}'
> 2
rpmbuild \
--define "%_topdir $(pwd)" \
--define "%version 525.85.12" \
--define "%branch 525" \
--define "%so_api 2.0" \
--define "%SONAME 2" \
--define "%_arch x86_64" \
--define "%_build_arch x86_64" \
--define "%_repo_arch x86_64" \
--target=x86_64 \
-v -ba SPECS/*.spec
cd RPMS/x86_64
ls *.rpm
note: branch is the first
.
delimited field in the driver version, ex:525
in525.85.12
note: for arm64/aarch64 set_build_arch
toaarch64
and_repo_arch
tosbsa
- fabricmanager
- nvidia-driver
See CONTRIBUTING.md