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.
CMake Macros for everyone!
There were many great reasons to develop this feature, main is that you want it and as fun as Mastering CMake can be, this feature is a way to reuse CMake “recipes”, don’t repeat yourself.
Publish, share and reuse CMake macros/scripts and use any “recipe” in your CMakeLists.txt.
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.
OUTDATED: Check the new way to customize your toolchain with biicode in this post: Raspberry PI cross building native (C/C++)
Step by step we are making biicode easier to customize, our latest addition is to allow users using a custom CMake toolchain instead of the autogenerated one. Continue reading
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.
This blog post is out dated.
If you’re interested on knowing the updates, check our docs for more information.
Project configuration and setup
Project configuration in software development is the process of setting up how your code will be built, managed and/or run. It varies depending on the programming language and tools, as the IDE, used. For instance, when programming in C/C++, the project setup usually comes with defining which artifacts (executables, libraries) will be built from certain source code files, with given compiling and linking options. In Microsoft Visual, this can be mostly done with wizards, menu and contextual commands; e.g. you can configure your directories containing external libraries in a dialog (Project Properties).