Failing to build an image in vs code for the apalis imx8 with the lxora carrier board

Hi,
I have a problem building a demo image in Vs code using the apalis imx8 with the lxora carrier board. I try to build the Qt template demo example of the Torizon Extention in vs code and get the following message

[+] Building 0.7s (3/3) FINISHED docker:default
=> [internal] load build definition from Dockerfile.sdk 0.0s
=> => transferring dockerfile: 2.17kB 0.0s
=> ERROR [internal] load metadata for docker.io/torizon/qt6-wayland-imx8:3.3.1 0.6s
=> [auth] torizon/qt6-wayland-imx8:pull token for registry-1.docker.io 0.0s

[internal] load metadata for docker.io/torizon/qt6-wayland-imx8:3.3.1:


Dockerfile.sdk:30

29 | ##
30 | >>> FROM --platform=linux/${IMAGE_ARCH}
31 | >>> torizon/qt6-wayland${GPU}:${BASE_VERSION} AS build

32
ERROR: failed to solve: torizon/qt6-wayland-imx8:3.3.1: failed to resolve source metadata for docker.io/torizon/qt6-wayland-imx8:3.3.1: failed to authorize: failed to fetch oauth token: unexpected status from GET request to https://auth.docker.io/token?scope=repository%3Atorizon%2Fqt6-wayland-imx8%3Apull&service=registry.docker.io: 401 Unauthorized

The Torizon OS i am using is the
VERSION=“6.8.1+build.25 (kirkstone)”
Could you please help me with this issue?

Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


Hello,

To address your issue with Qt6 containers on Torizon OS 6 for IMX8 modules, please consider the following points:

  1. For Torizon OS 6, ensure you are using the qt6-wayland-vivante container for IMX8 modules, as these utilize the Vivante GPU. You can find more details in the Toradex documentation.

  2. It is important to use the major version 4 release of Torizon Containers, which are now SoC-specific. For IMX8 modules, use the -imx8 platform prefix. More information is available in the TorizonCore upgrade notes.

  3. If you are migrating from qt6-wayland-vivante:3, you should transition to using weston-imx8:4 as per the latest guidelines.

To resolve your issue, update your Dockerfile to reflect the correct container image name and version for IMX8. Ensure you are using the platform-specific container with the appropriate version tag.

For the most up-to-date configuration details, I recommend reviewing the Qt C++ Template for Torizon OS documentation.

I hope this helps! If you have any further questions, feel free to ask.

Best regards,
Toradex AI Assistant.

Please, also check if these links can help you solve your problem:

Torizon OS Upgrade Notes | Toradex Developer Center.

Greetings @Elli,

Looking at your error here it seems like something is strange with the project template.

The error is with trying to pull the torizon/qt6-wayland-imx8:3.3.1 container image. However, this container image does not exist which explains why you’re getting the error. Though now the question is why was this project trying to pull something that does not exist in the first place.

Could you please share the following additional information:

  • The contents of the Dockerfile.sdk file from this project
  • What template did you select to create this project?
  • What version of the Torizon IDE extension do you have installed in VSCode?

Best Regards,
Jeremias

Hi Jeremias,

Thanks fro getting back to me. I uninstalled and reinstalled Vs Code but still facing the issue.
The Vs code is version 1.98.2
Toradex IDE extention 3.0.2
Selected the C++ Qt 6 QML Application template
so the content of the Dockerfile.sdk is the following:

ARGUMENTS --------------------------------------------------------------------

Board architecture

ARG IMAGE_ARCH=

Base container version

ARG BASE_VERSION=4

Board GPU vendor prefix

ARG GPU=

Application root directory inside the container

ARG APP_ROOT=

TODO: cross compile x86 to arm

Qt 6 cross toolchain

We will use emulation here

BUILD ------------------------------------------------------------------------

BUild Step

FROM --platform=linux/${IMAGE_ARCH}
torizon/qt6-wayland${GPU}:${BASE_VERSION} AS build

ARG IMAGE_ARCH
ARG GPU
ARG APP_ROOT

for vivante GPU we need some “special” sauce

RUN apt-get -q -y update &&
if [ “${GPU}” = “-vivante” ] || [ “${GPU}” = “-imx8” ]; then
apt-get -q -y install
imx-gpu-viv-wayland-dev
libgles-dev
; else
apt-get -q -y install
libgl1
libgles-dev
; fi
&&
apt-get clean && apt-get autoremove &&
rm -rf /var/lib/apt/lists/*

deps

RUN apt-get -q -y update &&
apt-get -q -y install
build-essential
cmake
qt6-base-private-dev
qt6-base-dev
qt6-wayland
qt6-wayland-dev
qt6-declarative-dev
qt6-declarative-private-dev
qml6-module-qtqml
qml6-module-qtqml-workerscript
qml6-module-qtcore
qml6-module-qtquick
qml6-module-qtquick-window
qml6-module-qtquick-controls
qml6-module-qtquick-layouts
qml6-module-qtquick-templates
libqt6opengl6-dev
# ADD YOUR PACKAGES HERE
&&
apt-get clean && apt-get autoremove &&
rm -rf /var/lib/apt/lists/*

deps

automate for torizonPackages.json

RUN apt-get -q -y update &&
apt-get -q -y install \

DO NOT REMOVE THIS LABEL: this is used for VS Code automation

# __torizon_packages_build_start__
# __torizon_packages_build_end__

DO NOT REMOVE THIS LABEL: this is used for VS Code automation

&& \
apt-get clean && apt-get autoremove && \
rm -rf /var/lib/apt/lists/*

USER torizon

WORKDIR ${APP_ROOT}

Not sure what is happening here. I have been using Vs code to run my application. AT some point I changed my password in Docker hub. Not sure if this could be linked to the issue. My colleague who tried to run a program on the same board was able to run it properly.

Thanks again,
Elli

Hi Jeremias,

The problem is solved. I updated the password in dockerhub but not locally on my computer. Tried logging out and back in and the problem was solved.

The problem is solved. I updated the password in dockerhub but not locally on my computer. Tried logging out and back in and the problem was solved.

Ahh okay, that’s good to hear. Thank you for reporting back.

Best Regards,
Jeremias