Compiling with biicode: CMake, build process, IDEs and more

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.

Compiling with biicode

Continue reading

CMake Tutorial to build better biicode projects

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.

Custom CMake toolchain is now a feature in biicode

Continue reading

Compile for Arduino using any editor

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.

Continue reading

Meta-configuration with CMake of C/C++ projects

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).


Meta-configuration with CMake

Continue reading