Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench

System Workbench for STM32


mbed C++ code to add in an existing C project

Hello everyone,

I’ve develop the biggest part of my program in C with Sytem Workbench on Eclipse.
I’m currently developing an other functionnality on it, which uses C++ files (on mbed), which I have modified to meet my need.

My C program (on Eclipse) and my C++ one (on mbed) work properly (but separately).

So my question is: How should I proceed to mix these two programs so that I have a unique binary file to load into my STM32 ?

Best regards.

France

Hi Julien,
Sorry for the delay

To convert a C project to C++, you just have to use the project >> Convert to C++ menu entry (in the project context menu):
Convert To C++ Menu Entry

If you don’t find this menu entry, just update your installation (Help >> Check for updates...); we just release a new version of Ac6 System Workbench for STM32, with a number of enhancements.
Bernard


Hello Bernard,

Thank you for your answer.

I tried your solution; this “Convert to C++” does not seem to do anything, or I can’t see it !

Nervermind, I find a solution which seems to work here: https://isocpp.org/wiki/faq/mixing-c-and-cppQuestion

So I’ve integrated some C test files on mbed and following the link above and this actually worked !
Note that you need a C++ Compiler to do this, that’s why I found it easier to import C files on mbed.

Julien.


France

Hi Julien,

There is nothing really changed when you switch a project to C++ (except that the menu entry “Convert to C++” now reads “Convert to C” wink); the only change you will see is that the linker will now use arm-none-eabi-g++ instead of -gcc (and that in project properties build tools settings you will see the G++ compiler).

However there may be a problem at link time; it seems to be that, when converting your project from C to C++, you lose the link to the HAL library... That seems to be a small bug in the tool that we will investigate, although there is a quite simple workaround in th emean-time.

To correct it you should recreate this link by:

  • project >> Properties >> C/C++ General >> Paths and Symbols >> References
    • Here the HAL library shoudl be selected then you need first to deselect it the Apply your change
  • Now reselect it and click OK


Now your project should compile and link correctly in C++ and you could add C++ code in it.

Bernard


 

Newest Forum Posts

  1. SPI on Nucleo_STMH533RE by royjamil, 2025-05-04 20:13
  2. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-25 07:37
  3. SPI on Nucleo_STMH533RE by royjamil, 2025-03-23 11:31
  4. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-23 09:33
  5. Configuring DMA for ADC in SW? by sam.hodgson, 2025-03-04 12:58
  6. Build a project in "release" mode by info@creosrl.it, 2025-02-20 18:12
  7. Build a project in "release" mode by info@creosrl.it, 2025-02-20 17:05
  8. Build a project in "release" mode by tang, 2025-02-20 10:36
  9. Build a project in "release" mode by info@creosrl.it, 2025-02-19 17:35
  10. Fail to debug in Win 11 C/C++ by mortenlund, 2024-12-26 20:27

Last-Modified Blogs