How to develop a Vulkan application for the Apalis I.MX8QM on embedded linux?

Hello,

I have completed the tutorial “Hello World application on Embedded Linux” using Eclipse. So I have a hello world application developped on a host running Ubuntu and cross-compiled for the Apalis I.MX8QM and running there. The Embedded linux I have running on the I.MX8 is the console build available from the Toradex Easy Installer (https://docs.toradex.com/107503-apalis-imx8_console-image-tezi.tar).

Now I want to move on and develop an application using Vulkan to perform compute operations (no graphics, only compute shaders). I’m a complete beginner in embedded linux… So I have no idea how to get started. Anybody could point me to a Vulkan tutorial for the Apalis IMX8 or explain me the steps into getting to a basic Vulkan application to run on the embedded linux ? I guess I need to use a different linux image (or add libs to the existing one) on the board, add dev libraries to my host PC and so on ?..

I have no experience with Vulkan. so I’d start from:
https://community.nxp.com/docs/DOC-331511

https://community.nxp.com/docs/DOC-343715

https://developer.ridgerun.com/wiki/index.php?title=IMX8/Multimedia/GPU/Vulkan

I had a look at that but I’m not much further… :frowning:
I’m guessing I need to add support somehow for the vulkan libraries inside the linux image ?.. I had a look at rebuilding the Yocto graphical-tdx-image and that works. So now I guess I need some kind of new layer or recipe to add to the build system so it adds the vulkan libs to the kernel and everything needed to develop vulkan apps inside the generated SDK (libs & headers)… But how to do that concretly remains for me a mystery… I can see there is the source code for Vulkan here I think: https://github.com/KhronosGroup/Vulkan-Loader. How do I create a recipe for this ? Am I kind of on the right track ?

Hi

You can add the following packages to the Bsp 3.0.4 by adding

IMAGE_INSTALL_append = "package-name"

to local.conf and build a custom image.

Best regards,
Jaski