Build NVIDIA JetPack Yocto images for Jetson Orin NX, Orin Nano, and Thor platforms
Introduction
Understand Yocto image builds for NVIDIA Jetson
Provision a Google Axion C4A virtual machine for Yocto image builds on Arm
Build a Yocto image for NVIDIA Jetson on a Google Axion VM
Flash the Yocto image onto the NVIDIA Jetson device
Run the Yocto image on the NVIDIA Jetson device
Next Steps
Build NVIDIA JetPack Yocto images for Jetson Orin NX, Orin Nano, and Thor platforms
Understand the Yocto build model
The Yocto Project overview describes a framework for creating tailored Linux-based systems. Yocto isn’t a Linux distribution. Instead, it provides tools and metadata that let you define the packages, configuration, and image contents for a specific target.
Yocto uses the OpenEmbedded build system and BitBake to process recipes, configuration files, and layers. Poky provides a reference distribution that you can extend with hardware support, applications, and product-specific configuration.
Unlike a general-purpose Linux distribution with predefined packages and defaults, you can use Yocto to control the complete image through build metadata. You can include only the required software, reproduce the same configuration across builds, and maintain hardware and product changes in separate layers. The tradeoff is greater build complexity and more upfront configuration.
Use Yocto to build NVIDIA JetPack images
NVIDIA JetPack provides the Jetson Linux board support package alongside accelerated libraries and developer tools for NVIDIA Jetson platforms.
The
OpenEmbedded for Tegra (OE4T) meta-tegra layer
brings NVIDIA Jetson hardware support into the OpenEmbedded and Yocto build environment. meta-tegra enables a Yocto image to use the Jetson kernel, boot components, drivers, and deployment artifacts while managing the root file system through Yocto metadata.
You’ll use scripts built around meta-tegra to complete the following workflow:
- Provision a Google Axion C4A virtual machine as the Arm build host.
- Select a supported NVIDIA Jetson target and build its Yocto image.
- Bundle the deployment artifacts and transfer them to an Ubuntu host.
- Flash the image to the Jetson platform and confirm that it boots.
Compared with a preconfigured Jetson Linux image, a tailored Yocto image omits unnecessary packages and services. This omission reduces storage use, limits the attack surface, and improves boot time. With layer-based configuration, you can reproduce, maintain, and audit product images.
The tradeoff is additional build and maintenance work. Builds can take several hours. You’ll need to align the JetPack, Jetson Linux, and meta-tegra versions. You’ll also need to manage layer compatibility, licensing, proprietary components, and device-specific flashing.
Before changing versions or adding another Jetson platform, see the
meta-tegra documentation
.
What you’ve learned and what’s next
You’ve now learned how Yocto and meta-tegra work together to create tailored NVIDIA Jetson images, including the benefits and maintenance tradeoffs.
Next, provision a Google Axion C4A virtual machine to build the image.