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


Using C++ and C files. Header file compilation error

Hi All

I have a project using STM32F407 MCU. I have a main.cpp and several .cpp and .c files. When compiling, I am getting errors related to the header files:

For example:

In file included from C:/tmp/ACC/inc/Controller.h:11:0,
from C:/tmp/ACC/inc/main.h:11,
from ../src/simulatorcontrol.c:4:
C:/tmp/ACC_DE25/inc/AdcChannel.h:39:1: error: unknown type name ‘class’

This file AdcChannel.h has the following:

  1. ifndef ADC_CHANNEL
  2. define ADC_CHANNEL


  1. ifdef __cplusplus

extern “C” {

  1. endif


  1. include “AdcCommon.h”



class AdcChannel
{
private:

protected:
....
.....
};

  1. ifdef __cplusplus

}

  1. endif


  1. endif // ADC_CHANNEL



Any advice how to fix this?

France

Hi,

The problem is that your source file is named simulatorcontrol.c ; according to the C extension, this is a C source file, so you should not include (directly or indirectly) any C++ header file, while probably both Controller.h and AdcChannel.h are C++...

Either your source file is a C++ file, so it’s extension should be cpp, or, in main.h, you should only include Controler.h if compiling C++ code, that is protect it by an #ifdef __cplusplus

Hope this helps clarifying things,

Bernard (Ac6)


 

Newest Forum Posts

  1. reservation car service Seattle by Jamesprede, 2025-05-01 10:06
  2. Last day: drone bonus by Danielrug, 2025-04-19 16:55
  3. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-25 07:37
  4. SPI on Nucleo_STMH533RE by royjamil, 2025-03-23 11:31
  5. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-23 09:33
  6. Configuring DMA for ADC in SW? by sam.hodgson, 2025-03-04 12:58
  7. Insightful Perspectives on This Subject by davidsycle, 2025-03-04 05:45
  8. Build a project in "release" mode by info@creosrl.it, 2025-02-20 18:12
  9. Build a project in "release" mode by info@creosrl.it, 2025-02-20 17:05
  10. Build a project in "release" mode by tang, 2025-02-20 10:36

Last-Modified Blogs