mBED Studio Debugger not displaying variable values correctly?

You are absolutely right. The linker should warn you about that. A table showing memory usage is usually displayed at the the end of a successful compilation.

Is it possible in mBED studio to compile just the OS components with a different level of optimization and into a single linkable object so that my application code can be compiled with -g O0 and linked with the OS object file?

I’ve never done it but I think that’s possible:

  • A static mbed-os library (libmbed-os.a) shall be built using the mbed-cli command line interface (Mbed Studion doesn’t have such feature yet). In addition I’m not sure the Arm Compiler 6 is capable to build static libraries so I’d suggest to use the GCC ARM instead. This thread could help.

  • You can use a mbed_app.json configuration file to configure the mbed-os library to your needs. See https://forums.mbed.com/t/static-library-and-mbed-app-json

  • Create a new project with the Mbed Studio and delete the mbed-os directory (mbed-os source files) . Copy & paste the libmbed-os.a static library file into the root directory of the project and compile with the GCC ARM compiler (see the link in my first post how to switch Mbed Studio to GCC ARM).

1 Like