A fresh look at toolchains in 2021
binutils, gcc and glibc are no longer the only options. Are they still the best? There are answers in this 41 minute long video presentation by Bernhard Rosenkränzer at Fosdem 2021.
Not too long ago, it was clear how to build a new toolchain -- build binutils, build a gcc bootstrap compiler, build glibc, build a full featured gcc, debug it with gdb. That is still a good option - but no longer the only one: These days, alternatives to each of those components are available. This talk examines the available options and gives recommendations of what components make sense for what use cases.
The talk looks at the traditional toolchain options as well as alternatives including LLVM/clang/lld, elfutils, TinyCC and OpenArk, musl, uClibc-ng, klibc, newlib, LLVM libc, bionic and dietlibc, libstdc++, libc++ and uClibc++, and shows which components go well together and which don't.