Introduction

This guide has been created to help you setup a native environment outside the VM. It also automates as much as possible of the manual tasks of your labs. The documented setup can be installed under 5 minutes and is working for Fedora and Ubuntu (and Linux distributions in the same families), including the WSL versions. If you have these Linux distributions (or derivatives) somewhere, you'll be able to fully use everything. If you are on Windows and don't know WSL yet, we recommend this Fedora WSL setup tutorial.

If you are unsure this is worth trying, as there is no support provided by the assistants... think about this. If you setup both the VM and this native setup, you'll have a zero-risk solution. If anything breaks or doesn't work on the native side, just zip your code and switch to the VM in 2 minutes...

If you still want to use the VM exclusively, this guide is also useful, because some of the automations can also be used directly in the provided REDS VM !

If you already started the semester and you are tired of working in a sometimes laggy VM, this setup will provide you a radically better experience!

The manual execution pain

To better showcase how much steps are required to just run your program, here is a demo of all the steps to build and run arm/hello_world.bin. This example is based on the folder asm_lab01.

cd arm
make
cd ..
./st
# Next commands inside the Uboot shell
tftp arm/hello_world.bin
go 0x82000000
# Finally showing the Hello World
# Hit any key to exit ... 
Ctrl+a, then x

Now, with the help of a CLI built just for this course, called asm, you just need 3 steps

asm make
asm run arm/hello_world.bin
# hit ctrl+c to exit uboot

Can you imagine how much time you can get back with this CLI ? Visit the next Setup page to install everything!

Continuous improvement

The author of this guide didn't personally took the course, but spent a big effort into building this setup for my friends on Fedora in 2025. Building, fixing, documenting the ASM CLI took a LOT of time. We hope almost all ASM students will benefit from this now that the tools are matured. Still, there might be some remaining unknown bugs, that should eventually be fixed...

If you see issues, the setup fails somewhere or want to contribute to the guide, please do it ! Send me a message on Teams (search for "Samuel Roland") or by email (samuel.roland at master.hes-so.ch).