Setting up Yocto for Jetpack 4.4
|
|
Select your Machine
You can apply the instructions in this wiki for multiple devices, so, whenever you see <MACHINE>, replace it (with the <> symbols included) with your target platform. Below you will find the possible <MACHINE> substitutions.
Device | <MACHINE> | |||
---|---|---|---|---|
TX1 | jetson-tx1 | |||
TX2 | jetson-tx2 | jetson-tx2i* | jetson-tx2-4gb* | |
XAVIER | jetson-xavier | jetson-xavier-8gb* | ||
NANO | jetson-nano-qspi-sd | jetson-nano-emmc* | ||
XAVIER NX | jetson-xavier-nx-devkit* | jetson-xavier-nx-devkit-emmc* | ||
Note: the machines with * have NOT been tested by RidgeRun yet |
Install Dependencies
1. Use the following command to install Yocto dependencies on Ubuntu.
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev xterm
2. Create a working directory for Yocto
YOCTO_DIR=/home/$USER/yocto-tegra mkdir $YOCTO_DIR
3. Select the latest branch (as per May 2020)
export BRANCH="dunfell"
4. Download Yocto's Poky base meta-layer
cd $YOCTO_DIR git clone -b ${BRANCH} git://git.yoctoproject.org/poky.git poky-${BRANCH}
5. Download meta-tegra
git clone -b ${BRANCH}-l4t-r32.4.3 https://github.com/madisongh/meta-tegra.git
Compile Yocto image
1. Initialize the build environment
cd $YOCTO_DIR source poky-${BRANCH}/oe-init-build-env build
2. Setup the required settings
local.conf
- Open the file $YOCTO_DIR/build/conf/local.conf with your favorite text editor and append the following lines to the end of the file.
- Setup the SSTATE and DOWNLOADS directories with a custom path to avoid re-downloading and re-compiling in the future.
- Add the name of your target platform <MACHINE>.
- Set IMAGE_CLASSES and IMAGE_FSTYPES to easily flash the target board.
- Set 3.6 as the python3 and python3-native preferred version.
![]() | The python recipes are NOT included in the main meta-tegra repository yet. |
![]() | Note: Replace <MACHINE> with your selected machine (don't delete the quotes "") |
MACHINE ?= "<MACHINE>" IMAGE_CLASSES += "image_types_tegra" IMAGE_FSTYPES = "tegraflash" SSTATE_DIR ?= "/home/${USER}/Yocto/sstate_dir" DL_DIR ?= "/home/${USER}/Yocto/downloads" PREFERRED_VERSION_python3 = "3.6%" PREFERRED_VERSION_python3-native = "3.6%"
Optional: By default, Yocto uses all the available cores and threads of the computer. If you want to limit the resources used on the build, you can add the following lines to your $YOCTO_DIR/build/conf/local.conf file. Change the parameters according to your needs and to your host machine specification.
BB_NUMBER_THREADS = '6' PARALLEL_MAKE = '-j6'
bblayers.conf
Open the file $YOCTO_DIR/build/conf/bblayers.conf with your favorite text editor and add the meta-tegra layer to the build/conf/bblayers.conf file to load the provided recipes:
BBLAYERS ?= " \ /home/${USER}/yocto-tegra/meta-tegra \ /home/${USER}/yocto-tegra/poky-dunfell/meta \ /home/${USER}/yocto-tegra/poky-dunfell/meta-poky \ /home/${USER}/yocto-tegra/poky-dunfell/meta-yocto-bsp \ "
3. Build the image
Use an image with developer tools such as GStreamer, NVIDIA plugins, etc
bitbake core-image-sato-dev
Or you can choose a different image from the following table
<IMAGE> | ||
---|---|---|
core-image-sato-dev | ||
core-image-weston | ||
core-image-base |
For direct inquiries, please refer to the contact information available on our Contact page. Alternatively, you may complete and submit the form provided at the same link. We will respond to your request at our earliest opportunity.
Links to RidgeRun Resources and RidgeRun Artificial Intelligence Solutions can be found in the footer below.