When trying to compile a kernel in Xavier, got the following error:

/xavier/source/kernel/kernel-4.9$ make O=$TEGRA_KERNEL_OUT zImage

make[1]: Entering directory ‘/home/xqy/xavier/out’
arch/arm64/Makefile:40: LSE atomics not supported by binutils
GEN ./Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
arch/arm64/Makefile:40: LSE atomics not supported by binutils
CHK include/config/kernel.release
Using /home/xqy/xavier/source/kernel/kernel-4.9 as source for kernel
GEN ./Makefile
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CC kernel/bounds.s
/home/xqy/xavier/source/kernel/kernel-4.9/kernel/bounds.c: In function ‘foo’:
/home/xqy/xavier/source/kernel/kernel-4.9/kernel/bounds.c:25:1: sorry, unimplemented: function profiling
/home/xqy/xavier/source/kernel/kernel-4.9/./Kbuild:45: recipe for target ‘kernel/bounds.s’ failed
make[2]: *** [kernel/bounds.s] Error 1
/home/xqy/xavier/source/kernel/kernel-4.9/Makefile:1070: recipe for target ‘prepare0’ failed
make[1]: *** [prepare0] Error 2
make[1]: Leaving directory ‘/home/xqy/xavier/out’
Makefile:170: recipe for target ‘sub-make’ failed
make: *** [sub-make] Error 2

Hi xuqiaoyan,

We documented the kernel compilation process on the following wiki:

We ran into the same error and corrected it. By following the steps described on that wiki you should not get this error.

Please follow up the L4T document -> Kernel Customization.

1 Like

Now,i have resolve the question,thanks a lot.

Hi WayneWWW

The L4T documentation causes the same error … Does NVIDIA test the processes and procedures before putting them online?

The original post has been 2 years ago. How about filing a new topic and describe your issue?

Sure I will, but does that mean the problem existed for 2 years and nothing has been done about it?


I am not sure what is the exact problem you want to report here. The original poster just threw out a command and log so I cannot tell much.

IMO, you may hit a problem because the usecase is wrong. The original post is trying to build zImage. However, we don’t use any zImage on any of latest tegra platforms.


my problem started with trying to get the NVIDIA Xavier NX kit (running JetPack 4.4.1) to detect MIPI/CSI input from an ADV7280am evaluation kit.
Having asked NVIDIA for help, and checked with the forums, I was told that I need to write my own device driver

So I am attempting to do that by following the Kernel Customization page https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-3243/index.html#page/Tegra%20Linux%20Driver%20Package%20Development%20Guide%2Fkernel_custom.html%23
and attempting to build the kernel on the Jetson Ubuntu results in build errors regarding not supported ELF formats (which I fixed) and now an error LSE atomics not supported by binutils - that’s why I am checking and reading this forum.

Then I think your issue sounds different from the original post.
Please file a new topic for your issue and paste the error log. Also, the document from the link is to cross compile kernel on x86 host and then deliver to ARM device (jetson).