SUCCESS! Although it has not been simple or straight-forward. 
Currently, the HailoRT source requires cmake 3.3x to build. Slackware AArch64
has cmake 4.3.x installed which is incompatible with cmake 3.3. Any attempts
to build HailoRT software using cmake 4.3.x result in terminal errors which
crash the compile process.
We decided to build inside a chroot environment to fully isolate the
build environment from the host system.
The chroot approach was the right decision. It enabled us to work very
quickly and iron out any issues that arose. All totally separate and
independent of the running host system.
——
Build Environment:
Host OS : Slackware AArch64 current
Host Hardware : Raspberry Pi 5
Chroot : /tmp/sairpi-chroot
cmake (legacy) : 3.31.12 (/usr/local/cmake-3.31/bin/cmake)
cmake (system) : 4.3.2 (/usr/bin/cmake) - NOT used for HailoRT
gcc : 15.2.0
Kernel built : 6.18.24-v8-sairpi5_64
HailoRT version : 5.3.0
protobuf version : 21.12 (v3.21.12, built from source via FetchContent)
——
- Error seen with cmake 4.x:
CMake Error at hailort/common/genai/serializer/CMakeLists.txt:5
(protobuf_generate_cpp): Unknown CMake command “protobuf_generate_cpp”.
Resolution:
Build and install cmake 3.31.12 from source as a legacy cmake alongside
the system cmake 4.3.2. cmake 3.31.12 installs to /usr/local/cmake-3.31/.
——
- Even with cmake 3.31.12, cmake configure failed with:
CMake Error at hailort/common/genai/serializer/CMakeLists.txt:5
(protobuf_generate_cpp): Unknown CMake command “protobuf_generate_cpp”.
Resolution:
Patch hailort/cmake/external/protobuf.cmake to detect lib64 first on
non-Windows platforms, falling back to lib if lib64 does not exist.
——
- Initial cmake configure used -DHAILO_BUILD_TOOLS=ON assuming this built
hailortcli. It doesn’t. It references an internal ‘tools’ subdirectory
that is not included in the public HailoRT release:
CMake Error at hailort/CMakeLists.txt:119 (add_subdirectory):
add_subdirectory given source "tools" which is not an existing directory.
Resolution:
Set -DHAILO_BUILD_TOOLS=OFF in cmake configure command.
hailortcli is still built automatically regardless of this flag.
——
- linux/vdma/monitor.c:53 calls del_timer_sync() which was removed in
Linux 6.15 and replaced by timer_delete_sync(). Build fails with:
../vdma/monitor.c:53:5: error: implicit declaration of function
'del_timer_sync' [-Wimplicit-function-declaration]
Resolution:
Replace del_timer_sync() with timer_delete_sync() in monitor.c:53.
——
Results…
HailoRT v5.3.0 built and installed successfully on Slackware AArch64 Linux [2026-04-26].
Installed:
/usr/lib64/libhailort.so.5.3.0
/usr/lib64/libhailort.so
/usr/lib64/libhailopp.so.1.0.0
/usr/lib64/libhailopp.so.1
/usr/lib64/libhailopp.so
/usr/lib64/cmake/HailoRT/
/usr/lib64/cmake/HailoPP/
/usr/include/hailo/
/usr/bin/hailortcli
HailoRT drivers v5.3.0 built and installed successfully on 2026-04-26.
Installed:
/lib/modules/6.18.24-v8-sairpi5_64/kernel/drivers/misc/hailo1x_pci.ko.xz
/lib/modules/6.18.24-v8-sairpi5_64/kernel/drivers/misc/hailo_integrated_nnc.ko.xz