This project includes all the necessary work for cross compiling projects on x86-64 hosts to run on AArch64 T3 Gemstone boards.
Normally projects can be compiled natively by copying them into the board and then using the tools available in there. But because host computers are much powerful than embedded boards we can utilize our host computer by using a cross compilation toolchain.
All details related to the project can be found at https://docs.t3gemstone.org/en. Below, only a summary of how to perform the installation is provided.
user@host:$ ./setup.sh2. After the installation is successful, activate the jetify-devbox shell to automatically install tools such as taskfile, etc.
user@host:$ devbox shellToolchain includes tools that are needed for cross compiling projects such as gcc, g++, ld, etc.
📦 devbox:sdk> task fetchThis step creates a minimal system based on Debian or Ubuntu using debos tool. You can change the packages that should be
included in the sysroot by modifying rootfs.yml. After creating rootfs, folders needed for
cross compilation are copied into ./build/{distro}/sysroot folder and any broken symlinks are fixed.
📦 devbox:sdk> task distro:create
📦 devbox:sdk> task distro:sysroot📦 devbox:sdk> task exampleAfter completing Step 5, a binary called hello should be created and then copied into the distro rootfs
created earlier.
You can run this binary on your host PC with the help of chroot and qemu-user-static tools.
📦 devbox:sdk> task distro:chroot
root@ubuntu-jammy:$ hello
> Hello, world!