Challenge
Veeam Agent for Linux backup job fails with "Failed to load module [veeamsnap] error":
[error] Failed to load module [veeamsnap] with parameters [zerosnapdata=1 debuglogging=0 snapstore_block_size_pow=14 change_tracking_block_size_pow=18 logdir=/var/lo...
[error] Processing finished with errors
Deployment of Veeam Agent for Linux from the Veeam Backup & Replication console fails with the error:
Failed to install Veeam Agent for Linux: Failed to install agent: non-matching package versions
Cause
UEK R7 is built with GCC 11, while Oracle Linux 8 ships GCC 8.5. This causes veeamsnap kernel module build failure because DKMS uses GCC 8.5:
[root@localhost ~]# cat /var/lib/dkms/veeamsnap/6.1.0.1498/build/make.log
DKMS make.log for veeamsnap-6.1.0.1498 for kernel 5.15.0-200.131.27.1.el8uek.x86_64 (x86_64)
Wed Dec 6 12:03:39 EST 2023
make: Entering directory '/usr/src/kernels/5.15.0-200.131.27.1.el8uek.x86_64'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9.2.0.1)
You are using: gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-20.0.1)
CC [M] /var/lib/dkms/veeamsnap/6.1.0.1498/build/log.o
CC [M] /var/lib/dkms/veeamsnap/6.1.0.1498/build/mem_alloc.o
gcc: error: unrecognized command line option '-ftrivial-auto-var-init=zero'
gcc: error: unrecognized command line option '-ftrivial-auto-var-init=zero'
gcc: error: unrecognized command line option '-fzero-call-used-regs=used-gpr'
make[1]: *** [scripts/Makefile.build:288: /var/lib/dkms/veeamsnap/6.1.0.1498/build/log.o] Error 1
make[1]: *** Waiting for unfinished jobs....
gcc: error: unrecognized command line option '-fzero-call-used-regs=used-gpr'
make[1]: *** [scripts/Makefile.build:288: /var/lib/dkms/veeamsnap/6.1.0.1498/build/mem_alloc.o] Error 1
make: *** [Makefile:1986: /var/lib/dkms/veeamsnap/6.1.0.1498/build] Error 2
make: Leaving directory '/usr/src/kernels/5.15.0-200.131.27.1.el8uek.x86_64
Solution
Tip: Hover over the command blocks below to see the copy to clipboard button.