[Qt-creator] Debugging different bare metal devices with the same kit

Richard Weickelt richard at weickelt.de
Thu Apr 2 14:22:07 CEST 2020


Hi,

I have a Qbs project for bare metal MCUs which builds 2 different binaries,
each of them runs on a different MCU device. While developing, I need to
switch often between the devices and want to start an interactive debug
session on one of the MCUs. I don't need to run the applications at the same
time though.

So I created one kit / profile respectively which is able to build the
applications for both MCUs. I can use this "generic" kit for multiple
projects using the same SDK (Silabs EFM32 SDK) because it does not contain
any device-specific settings. The build setup was straight forward and simple.

I also created 2 different bare metal debug server providers, one for each
device (because the debug server needs device-specific cli arguments) and
thus, I also needed 2 different device configurations.

This was a bit confusing: The bare metal device configuration does not let
me specify anything else than the debug provider, so it looks like a
superfluous configuration axis which only increases complexity.

There is also the limitation that I cannot debug/run on my 2 different
devices with the same kit, because the kit will only allow me to select 1
device with its respective debug provider and nothing else.

Looks like I cannot treat the "kit" as a "build kit" only, but I need to set
up 1 kit for each target device type although the whole build toolchain
setup is identical. Did I miss anything? It would be convenient if I could
either:

- choose a different device type/debug provider per run configuration
- parameterize the debug provider with an (environment) variable that I set
in the run configuration or even better: in the Qbs project files

Is this already possible somehow?

Thanks
Best regards
Richard


More information about the Qt-creator mailing list