NVIDIA Jetson Orin - JetPack 6.1 - Obtaining Sources
Obtaining the kernel and BSP sources is the first step for compiling Jetson Linux in JetPack 6.1.
This section explains the prerequisites you must meet and the two supported ways to download the sources: synchronizing with Git through the source_sync.sh
script, or manually downloading and extracting the official archives from NVIDIA.
Prerequisites
Before obtaining the kernel and BSP sources, ensure your host environment meets the following requirements:
- The build will be performed on a Linux host computer using cross-compilation.
- JetPack 6.1 is already installed on your host system.
- The following dependencies are installed:
- git-core
- build-essential
- bc
On Debian-based systems you can install them with:
sudo apt install git-core build-essential bc
Obtaining the Sources
There are two supported ways to obtain the Jetson Linux kernel sources:
- Syncing the sources using Git with the
source_sync.sh
script. - Manually downloading and extracting the sources from the NVIDIA Jetson Linux Archive.
Both approaches generate the same outcome: a full kernel source tree, NVIDIA out-of-tree modules, and device tree definitions that align with the JetPack 6.1 release.
Syncing the Sources
NVIDIA recommends using the source_sync.sh
script, which is located in the Linux_for_Tegra/source/
directory. This script downloads the kernel, out-of-tree modules, and device tree sources for the exact JetPack release you are targeting.
- Export the location of your JetPack installation. By default, the SDK Manager installs JetPack 6.1 for Jetson AGX Orin under your home directory:
export DEVDIR=$HOME/nvidia/nvidia_sdk/JetPack_6.1_Linux_JETSON_AGX_ORIN_TARGETS/Linux_for_Tegra
- Run the script with the appropriate options:
cd $DEVDIR/source ./source_sync.sh -k -t jetson_36.4
Where:
-k
fetches all kernel-related sources (kernel, nvgpu, out-of-tree drivers, device tree files, etc.).-t jetson_36.4
specifies the tag that corresponds to JetPack 6.1 (L4T r36.4).
After the script finishes, the folder $DEVDIR/source/
will contain the complete source tree, ready for compilation.
Manually Downloading the Sources
If you cannot use source_sync.sh
(for example, in a restricted network environment), you can download and extract the sources manually.
- Export the location of your JetPack installation. By default, the SDK Manager installs JetPack 6.1 for Jetson AGX Orin under your home directory:
export DEVDIR=$HOME/nvidia/nvidia_sdk/JetPack_6.1_Linux_JETSON_AGX_ORIN_TARGETS/Linux_for_Tegra
- Copy the
public_sources.tbz2
archive
Download the archive from the Jetson Linux Archive. For JetPack 6.1 (L4T r36.4) use this link: public_sources.tbz2
Then copy it into your JetPack installation directory:
cd $DEVDIR cp ~/Downloads/public_sources.tbz2 .
- Extract the kernel, out-of-tree modules, and display driver sources:
tar xf public_sources.tbz2 -C $DEVDIR/.. cd $DEVDIR/source tar xf kernel_src.tbz2 tar xf kernel_oot_modules_src.tbz2 tar xf nvidia_kernel_display_driver_source.tbz2
This extracts the kernel source to the kernel/
subdirectory, and the NVIDIA out-of-tree kernel modules sources to the current directory.
After this step, your $DEVDIR/source/
directory will contain the full kernel source tree, out-of-tree modules, and display driver code, ready for compilation.
Once the sources are obtained, continue with the next section: Building the Kernel, OoT Modules and DTBs.