Learning more stuff Months pass by, and I still have a lot of catch up. For example, being that I always worked in user-space in a native compilation environment, I never went too much in depth about cross compilation. I've been using it before, for a few university projects, but after 8 years or so, I forgot most of the "theory" behind it. A colleague linked me to this very relevant 1-hour video: Anatomy of Cross-Compilation Toolchains: https://www.youtube.com/watch?v=Pbt330zuNPc&t=7s Another thing I should get more handy with is CMake. I have a few biases against CMake: - I like 'make dist', and it seems not to support it[1] ...But I should really check if CPack[2] is what I seek for. - I saw it used in what I think is the worst possible way at $job[4] ...But I know it can be used properly, with a target-based declarative form. - It seems way more complex than what I want for my daily building ...But so or worse it is autotools. I'm using it in these days at work, and I'm actually enjoying the experience so far. It obviously requires some reading of the documentation. What I'm currently doing is looking at other existing cmake configurations, checking the invoked commands against the reference manual (I *need* to know what I do). I also improve my work with what I already know from my experience with other build systems. For example, I like to keep a distinction between public and private headers: a thing that not many developers keep in mind, as I can tell. It is fairly easy to do so: add_library(foo ...) # well explained in docs: # https://cmake.org/cmake/help/latest/command/target_include_directories.html target_include_directories(foo PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include> ) I plan to read this document: An introduction to Modern CMake https://cliutils.gitlab.io/modern-cmake/ [1]: https://gitlab.kitware.com/cmake/community/-/wikis/FAQ#where-is-make-dist [2]: https://gitlab.kitware.com/cmake/community/-/wikis/FAQ#what-is-the-best-way-to-distribute-source-code-or-binaries-for-a-cmake-based-project [3]: https://cliutils.gitlab.io/modern-cmake/