There are 2 types (build_type) of build configuration in PlatformIO:
|Default configuration. A “release” configuration of your firmware/program does not contain symbolic debug information and is optimized for the firmware size or speed (depending on Development Platforms)|
|A “debug” configuration of your firmware/program is compiled with full symbolic debug information and no optimization. Optimization complicates debugging, because the relationship between source code and generated instructions is more complex.|
If you need to control build flags that are specific for debug configuration please refer to debug_build_flags.
If you need to build a project in
debug configuration, please use one of
- Add build_type with
debugvalue to “platformio.ini” (Project Configuration File)
- Use target
platformio run --targetcommand.
To avoid having Debugging rebuild the project, please create a
separate build environment that defines
build_type = debug. See
the example below where the
mydebug build environment will be used
automatically by Debugging:
[env] platform = ... board = ... framework = ... ... other common configuration [env:myrelease] some_extra_options = ... [env:mydebug] build_type = debug some_extra_options = ...