Skip to main content

Radxa OS Development

Prerequisites

Radxa OS development environment offers two setup methods: Method 1 is based on Dev Container (recommended for secondary development), and Method 2 is based on the rsdk-image prebuilt container (recommended for build-only use). Both methods use the same rsdk tool to compile Radxa OS. Choose the one that fits your needs.

Reference Tutorial

You can follow the tutorial below to install Docker / Visual Studio Code / Dev Containers and other base components.

  • Hardware: x86_64 PC
  • Common dependencies: Docker
  • Method 1 additional requirements: Visual Studio Code + Dev Containers extension
  • Method 2 additional requirements: apt available, and network access to the Radxa radxa-deb repository

Choose Your Setup Method

  • Download rsdk source code

    Use the git clone command to clone the RadxaOS SDK (rsdk) source code.

    Linux@host$
    git clone --recurse-submodules <git_repo_url>

    Replace <git_repo_url> with: https://github.com/RadxaOS-SDK/rsdk.git

  • Start development environment

    Open the Radxa OS SDK (rsdk) source code directory with Visual Studio Code: The Dev Container extension will usually automatically detect the configuration file in the folder and prompt you to reopen in the container development environment.

    tip

    When starting the development environment for the first time, Dev Containers will automatically download and install dependencies. Please be patient as this may take some time.

    1. Click the Remote option in the bottom-left corner
    2. Select the Reopen in Container option

    Wait for the container to automatically connect and initialize the environment. You can click the bottom right corner to select to display logs in the terminal.

Compile Radxa OS

After completing the environment setup, use the rsdk command to run the TUI interface:

Linux@host$
rsdk
┌─────────────────┤ RSDK ├──────────────────┐
│ Please select a task: │
│ │
│ Build system image │
│ ========= │
│ About │
│ │
│ <Ok> <Cancel> │
│ │
└───────────────────────────────────────────┘

Select the Build system image option to further choose the target board model you want to build for.

┌─────────────────┤ RSDK ├──────────────────┐
│ Please select a product: │
│ │
│ (*) radxa-<sbc_model> │
│ │
│ <Ok> <Cancel> │
│ │
└───────────────────────────────────────────┘

After selecting yes, the Radxa OS build process will start, and rsdk will automatically complete the image compilation.

┌─────────────────┤ RSDK ├───────────────────────┐
│ │
│ Are you sure to build for 'radxa-<sbc_model>'? │
│ │
│ │
│ <Yes> <No> │
│ │
└────────────────────────────────────────────────┘

After compilation is complete, a folder corresponding to the board model and system version will be generated in the out directory, containing the Radxa OS image named output.img.

Radxa Cubie A7A / A7Z / A7S Build System Options

After selecting Build system image, choose the radxa-a733 option from the board model list.

FAQ

  • During the build, if you encounter rm: cannot remove ... rootfs/boot/efi: Device or resource busy, it means out/<board>/rootfs/boot/efi is mounted. Run sudo umount -l out/<board>/rootfs/boot/efi to unmount it before removing the build artifacts in the out directory.
  • Method 1 related: Dev Container setup paused with the message You might be rate limited by GitHub; if the development container fails to start, edit .devcontainer/devcontainer.json and adjust runArgs.
  • Method 2 related: if the rsdk-image container fails to start, run docker rm -f rsdk to remove the existing container and try again.

    You need to be logged into GitHub to post a comment. If you are already logged in, please ignore this message.

    Radxa-docs © 2026 by Radxa Computer (Shenzhen) Co.,Ltd. is licensed under CC BY 4.0