NVIDIA Jetson Orin - JetPack 6.1 - Compiling Code

From RidgeRun Developer Wiki



Follow Us On Twitter LinkedIn Email Share this page


Previous: JetPack_6.1/Getting_Started/Components Index Next: JetPack_6.1/Compiling_Code/Obtaining_Sources








Learning to compile the BSP and OS components enables developers to adapt Jetson Linux for their specific project needs.

The Compiling Code section provides an overview of the steps required to rebuild the Linux for Tegra (L4T) software stack on NVIDIA Jetson Orin devices. JetPack delivers a complete environment out of the box, but in many development scenarios it is necessary to recompile core components. Typical cases include modifying the Linux kernel configuration, enabling or disabling specific drivers, rebuilding out-of-tree (OoT) modules, or generating updated device tree blobs (DTBs) to reflect hardware changes. Understanding how to compile these components ensures that your Jetson system remains flexible and can be adapted to project requirements.

The first step in the workflow is Obtaining Sources. At a high level, this process provides access to the kernel sources, additional NVIDIA driver modules, and the device tree definitions that match the JetPack release installed on your board. Having the right sources is critical because mismatched versions can cause compilation failures or runtime errors. This subsection explains how to download the sources using NVIDIA’s source_sync.sh tool or, alternatively, how to extract them from the official public archives.

The second step is Building the Kernel, OoT Modules and DTBs. Here, developers configure and compile the kernel, compile the OoT modules that NVIDIA distributes separately, and generate DTBs that describe the hardware layout. These build outputs represent the core elements of the BSP that developers can modify to support new peripherals, adjust power management, or test experimental features. By learning how to rebuild these components, you can maintain a reproducible and reliable workflow across JetPack releases.

It is important to note that not every component of the BSP is provided in source form. Low-level boot firmware and cboot remain binary-only, so they cannot be modified or recompiled. For that reason, the focus of this section is strictly on kernel, modules, and device trees, which are the layers most relevant for customization and development.

By following the subsections in order, this section establishes a clear and reproducible workflow for obtaining sources, compiling them, and preparing outputs for deployment. Whether you are enabling a new sensor, rebuilding for performance optimization, or simply experimenting with kernel configuration, the Compiling Code section provides the foundation for controlled and reliable development on Jetson Orin with JetPack 6.1.



Previous: JetPack_6.1/Getting_Started/Components Index Next: JetPack_6.1/Compiling_Code/Obtaining_Sources