# Build with Docker

Build the QIR SDK along with the robotics image using the Dockerfile, building upon the Qualcomm Linux image.

1. [Set up the host computer](https://docs.qualcomm.com/doc/80-70020-265/topic/docker_workflow.html#section-host-machine-setup-docker)
2. [Build the robotics image and QIR SDK artifacts](https://docs.qualcomm.com/doc/80-70020-265/topic/docker_workflow.html#section-build-robotics-image-and-qirp-sdk-artifacts-docker)

## Set up the host computer

**Prerequisites**

Ensure that your Ubuntu host meets the requirements in [Host computer requirements](https://docs.qualcomm.com/doc/80-70020-265/topic/qirp_sdk_build.html#section-host-machine-requirements) and is set up with the necessary software tools installed and configured for use.

To set up the host computer for building QIR SDK in Docker, follow these steps:

1. Install the required packages.

sudo apt-get install -y git
        Copy to clipboard
2. Clone the `qcom-download-utils` git repository, which provides a Dockerfile for Qualcomm public Yocto layers and a few helper scripts.

mkdir <workspace_path>
        cd <workspace_path>
        git clone https://git.codelinaro.org/clo/le/qcom-download-utils.git
        cd qcom-download-utils
        Copy to clipboard
3. Check if your host computer is configured accurately and install Docker.

bash utils/check_config.sh qcom-robotics-full-image
        bash docker/docker_setup.sh
        Copy to clipboard
4. Create a Yocto Docker image.

bash docker/docker_build.sh -f ./docker/dockerfiles/Dockerfile_22.04 -t qcom-6.6.90-qli.1.5-ver.1.1_robotics-product-sdk-1.1_22.04
        Copy to clipboard

Note

- If you encounter issues with Docker, see [Troubleshoot Docker](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-254/troubleshoot_sync_build_and_flash.html#docker).
- If you encounter `apt install` errors during the build process, check whether an outdated Ubuntu 22.04 image is used. After ensuring your data is secure, either execute `docker rmi ubuntu:22.04` or update the image through other means; then, rerun the commands above.

## Build the robotics image and QIR SDK artifacts

Build the robotics image and QIR SDK artifacts using the Dockerfile.

bash docker/docker_run.sh \
    -M <Machine_name> \
    --release="qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1" \
    --build-override="<Build_override>" \
    --alternate-repo="true"
    Copy to clipboard

**Example**

bash docker/docker_run.sh \
    -M qcs6490-rb3gen2-vision-kit \
    --release="qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1" \
    --build-override="custom" \
    --alternate-repo="true"
    Copy to clipboard

| **Parameter** | **RB3 Gen 2 Vision Kit** | **IQ-9 Beta Evaluation Kit** | **IQ-8 Beta Evaluation Kit** |
| --- | --- | --- | --- |
| `Machine_name` | `qcs6490-rb3gen2-vision-kit` | `qcs9075-iq-9075-evk` | `qcs8300-ride-sx` |
| `Build_override` | `custom` | `custom`<br><br><br>`base` | `custom`<br><br><br>`base` |

## Debug in the Docker

If you are familiar with Yocto, you can use the interactive terminal to debug in Docker by performing the following steps:

1. Run the preceding commands to set up and build in the docker environment, and then run the following commands:

cd <workspace_path>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1
        bash
        docker run -it -v "${HOME}/.gitconfig":"/home/${USER}/.gitconfig" -v "${HOME}/.netrc":"/home/${USER}/.netrc" -v $(pwd):$(pwd) -w $(pwd) qcom-6.6.90-qli.1.5-ver.1.1_robotics-product-sdk-1.1_22.04 /bin/bash
        Copy to clipboard
2. Set the environment variables and compile according to steps in [Set up the build environment](https://docs.qualcomm.com/doc/80-70020-265/topic/github_workflow.html#section-set-up-build-environment).

Note

- The Base version is intended for developers who want a purely upstream and open-source software stack without Qualcomm proprietary software and power/performance value adds.
- The Custom version provides a richer set of functionalities and includes Qualcomm’s value adds like SDKs and power performance improvements. It's suited for developers who rely on Qualcomm’s value adds and proprietary/downstream software in their products.
- For more details, see [Software Overview](https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-252/qualcomm-linux-sw-overview.html).

**Results:**

Tab RB3 Gen 2 Vision Development Kit
Tab IQ-9075 Evaluation Kit
Tab IQ-8 Beta Evaluation Kit

- QIR SDK artifacts:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs6490-rb3gen2-vision-kit_custom/tmp-glibc/deploy/qirpsdk_artifacts/qcs6490-rb3gen2-vision-kit/qirp-sdk_<version>.tar.gz
>     Copy to clipboard

- Robotics image:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs6490-rb3gen2-vision-kit_custom/tmp-glibc/deploy/images/qcs6490-rb3gen2-vision-kit/qcom-robotics-full-image
>     Copy to clipboard

> 
> 
> **Example using** `custom` **build override**

- QIR SDK artifacts:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs9075-iq-9075-evk_custom/tmp-glibc/deploy/qirpsdk_artifacts/qcs9075-iq-9075-evk/qirp-sdk_<version>.tar.gz
>         Copy to clipboard
- Robotics image:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs9075-iq-9075-evk_custom/tmp-glibc/deploy/images/qcs9075-iq-9075-evk/qcom-robotics-full-image
>         Copy to clipboard

> 
> 
> **Example using** `base` **build override**

- QIR SDK artifacts

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs9075-iq-9075-evk_base/tmp-glibc/deploy/qirpsdk_artifacts/qcs9075-iq-9075-evk/qirp-sdk_<version>.tar.gz
>         Copy to clipboard
- Robotics image:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs9075-iq-9075-evk_base/tmp-glibc/deploy/images/qcs9075-iq-9075-evk/qcom-robotics-full-image
>         Copy to clipboard

**Example using** `custom` **build override**

- QIR SDK artifacts:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs8300-ride-sx_custom/tmp-glibc/deploy/qirpsdk_artifacts/qcs8300-ride-sx/qirp-sdk_<version>.tar.gz
>         Copy to clipboard
- Robotics image:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs8300-ride-sx_custom/tmp-glibc/deploy/images/qcs8300-ride-sx/qcom-robotics-full-image
>         Copy to clipboard

**Example using** `base` **build override**

- QIR SDK artifacts:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs8300-ride-sx_base/tmp-glibc/deploy/qirpsdk_artifacts/qcs8300-ride-sx/qirp-sdk_<version>.tar.gz
>         Copy to clipboard
- Robotics image:

> 
> 
> <workspace>/qcom-download-utils/qcom-6.6.90-QLI.1.5-Ver.1.1_robotics-product-sdk-1.1/build_qcs8300-ride-sx_base/tmp-glibc/deploy/images/qcs8300-ride-sx/qcom-robotics-full-image
>         Copy to clipboard

## Flash the robotics image to devices

To flash the robotics image to the device, see [Flash the robotics image](https://docs.qualcomm.com/doc/80-70020-265/topic/flash_the_robotics_image.html#flash-and-install), using the `qcom-robotics-full-image` generated in [Build the robotics image and QIR SDK artifacts](https://docs.qualcomm.com/doc/80-70020-265/topic/docker_workflow.html#section-build-robotics-image-and-qirp-sdk-artifacts-docker).

Last Published: Oct 10, 2025

[Previous Topic
Build with GitHub workflow](https://docs.qualcomm.com/bundle/publicresource/80-70020-265/topics/github_workflow.md) [Next Topic
Build robotic image with the prebuilt robotics eSDK](https://docs.qualcomm.com/bundle/publicresource/80-70020-265/topics/esdk_gen_image.md)