Toradex BSP layers + debian custom image

I’m trying to learn the BSP Layers and Reference Images for Yocto Project and As I’m reading through and loading the multimedia reference image to my board, I got confused on what that reference image does. It loaded a QT cinematic demo which I had a heck of a time finding were to disable that. Prob shouldn’t have that as an autorun kind of thing. But it looked like it had what I wanted. However, I notice it did not have any of the cross compiler tools and no way to install them because it has no package manager. It was suggested (in another post) that BSP reference image is basically torisoncore with out docker. Seems to not have a few things I would need. I’m new to Yacto and a goal I would have is to make a debian image and include the Toradex BSP layers. Is that even possible? Basically, I need
-Apt
-the BSP layer
-want to use libgpiod for GPIO’s
-wayland, I’ll be using crank storyboard

That’s kinds it. As far at I can see the multimedia reference image is only missing apt

Greetings @jeffbelz,

It should be noted that our BSP image are meant as references only rather than final production OS images. Our multimedia image that you loaded brings up a Qt demo to showcase the graphical capabilities of the hardware. For your custom image you can just remove the unneeded demo.

With regards to your requirments, if you want an OS with everything you require, you’ll need to build it using the Yocto/Openembedded build system. Since there’s no Docker in this OS image we can’t trivially pull down sandbox environments with packages we need. Therefore these dependencies need to be built into the OS image itself.

Here’s our article on setting up a build environment for our reference BSPs: Build a Reference Image with Yocto Project/OpenEmbedded | Toradex Developer Center

Then here’s an article on basic Yocto customization like adding new packages and recipes: Custom meta layers, recipes and images in Yocto Project (hello-world examples) | Toradex Developer Center

Do note that this does mean you’ll need to take ownership and maintenance of the custom OS you produce here.

As for development tools like a cross compiler or SDK, you’ll need to produce that yourself here as well. Most customers custom images will likely include new libraries that Toradex can’t account for, which is why we can’t reasonably provide a ready to go SDK for our BSP reference images. Fortunately using Yocto you can also produce a SDK that is tailor fit for your custom image. More details on this here: Linux SDKs | Toradex Developer Center

Best Regards,
Jeremias

A few things
" For your custom image you can just remove the unneeded demo." If I remove the references out of the .bb file it crashes bitbake. don’t know why it just throws errors.

I removed line 28 and 35
APP_LAUNCH_WAYLAND ?= “wayland-qtdemo-launch-cinematicexperience”
APP_LAUNCH_X11 ?= “x-window-qtcinematicexperience”
saved it and ran a “bitbake-layers show-recipes | less” and I get the error listed in my attached
Error1.txt (5.4 KB)
error1.txt

2nd I have been trying to follow the links you sent for the past day and a half. I configured my local.conf for the processor and the EULA lic. and started the image build with
“bitbake tdx-reference-multimedia-image -c populate_sdk” it’s has over 7000 tasks to do, so I left for 5 hours and it still was not done. then it through an error that I have no hopes to understand. It’s in error2.txt that is attached. Is this error on your side?
Error2.txt (2.2 KB)

Anyway, I’m going to play around with it for the next day or so, but if I can;t get an image to compile I can just use the torizon. Question - Can I use the easy loader to load my new image? I tried to follow the videos but they are out of date. The guy on the video was using an image that had Ångström and LXDE.

Have a a great holiday!

Here is the log that my error2.txt refer to
log.do_fetch.18706 (121.8 KB)

For error 1, you removed the wrong lines. You removed the variable definitions for APP_LAUNCH_WAYLAND and APP_LAUNCH_X11. Which left them undefined for the rest of the build.

To remove something from an image you want to remove it from the list in the IMAGE_INSTALL variable. If you notice in that recipe file towards the bottom there’s a list of packages that are to be installed in this image via IMAGE_INSTALL. You wan to remove APP_LAUNCH_WAYLAND and APP_LAUNCH_X11 from this list. This way they don’t get installed.

Regarding error 2, this one is a bit stranger. The logs and error suggests it was a fetching error. Basically the build system was attempting to fetch our Linux kernel repository from here: linux-toradex.git - Linux kernel for Apalis, Colibri and Verdin modules

But, for whatever reason the fetch failed. Perhaps a networking hiccup at the time? It’s hard to say as the error here is pretty generic. Seems like it couldn’t find or reach the git repository to fetch it. I don’t notice this on my end so I don’t think it’s general issue. I would say see if it happens a 2nd time just to rule out any weird network issues that may have been happening at the time.

Best Regards,
Jeremias

For error 1 - I figured I was doing something wrong.

I swap the build over to a dedicated unix machine. Before I was using the WSL ubuntu on my PC. After 12 hours it was still not done and it had errors. I put the -k to continue with errors

As of now on the Linux machine it has been 6 hours and it’s 42%…but no errors. So progress :slight_smile:

Ah that makes a bit more sense. I’m no too surprised that Yocto has some issues with WSL since it does have quite bit of requirements and assumptions about the base system.

But glad to see you were able to progress.

Best Regards,
Jeremias