Hello everyone,
I have successfully built an ARM cross-compilation toolchain from source and tested it by running a simple bare-metal program on QEMU.
Project Overview:
Built ARM toolchain (arm-none-eabi-gcc)
Created a minimal bare-metal setup using:
startup.s
linker.ld
hello.c
Compiled and linked the program without standard libraries (freestanding environment)
Executed the ELF binary using QEMU (versatilepb machine)
Output: The program successfully ran and printed: “Hello rtems!”
Key Learning: This helped me understand low-level system concepts including:
Cross compilation
Linker scripts
Bare-metal execution flow
QEMU emulation
I have uploaded the complete project here: GitHub - sakshamupadhy/arm-toolchain: cross compiler · GitHub
I would appreciate any feedback or suggestions for improvement.
Thank you.
Regards,
Saksham
