biicode knows how source code files connect to each other. With this information, it creates a boilerplate CMake layout to build your project automatically. biicode then detects how sources connect and builds a dependency graph following #includes and implementations generating, for each block, a CMakeLists.txt defining variables to the dependency graph detected.
This translates into a CMakeLists.txt file with just one line by default:
Even though the boilerplate might be enough for some projects, here’s a guide to fully control the building process.
Today, we explain the different options available in biicode once you’ve got your CMakeLists.txt ready.
Biicode is a C and C++ dependency manager. And uses CMake to configure and build your projects. Hope there are no surprises here!
This post is a CMake Tutorial to understand the basics of generating biicode projects for your usual tools and some tips to make projects multi-os compatible via CMakeLists.txt.
Arduino IDE is a great tool for starters as it sets introduction to programming friction to a minimum. However, as soon as you want to develop more complex projects you discover it’s not enough. Sure you can edit your code with any editor, but you still need to respect Arduino IDE code structure (which is a bit restricting) if you want to be able to compile the code and flash it to your board.