Проблема конфигурации CMake в проекте STM32 — невозможно включить файл заголовка ⇐ C++

Программы на C++. Форум разработчиков
Anonymous
Проблема конфигурации CMake в проекте STM32 — невозможно включить файл заголовка

Сообщение Anonymous »

Я новичок в работе с CMake, и мне нужна помощь, чтобы понять, что я делаю неправильно. Я использую расширение STM32 VS Code и создал новый пустой проект с помощью STM32Cube MX с выводом CMake. Пустой проект компилируется нормально, проблем нет. Однако после того, как я добавил в Core новую подпапку под названием Modules с двумя файлами: ModuleA.c и ModuleA.h, я столкнулся с проблемами.
В свой CMakeLists.txt я включил новый модуль такой:
# Add sources to executable
target_sources(${CMAKE_PROJECT_NAME} PRIVATE
Core/Modules/ModuleA.c
)

# Add include paths
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
${CMAKE_SOURCE_DIR}/Core/Modules
)

Несмотря на это, когда я пытаюсь вызвать тестовую функцию из ModuleA.c в main.c и включить ее с помощью #include ModuleA.h, компилятор выдает ошибку: Нет такого файла или каталога #include "ModuleA.h"
Что еще мне нужно изменить, чтобы это работало?
Нужно ли мне что-либо менять в файле settings.json внутри папки .vscode при добавлении новых файлов или он должен обновляться автоматически?
Заранее спасибо за помощь !
Core
│
├── Inc
│ └── main.h
│ └── stm32xx_hal_conf.h
│ └── stm32xx_it.h
│
├── Modules //this folder I add
│ └── ModuleA.h
│ └── ModuleA.c
│
└── Src
└── main.c
└── stm32xx_hal_msp.c
└── system_stm32l0xx.c


Подробнее здесь: https://stackoverflow.com/questions/790 ... eader-file

Вернуться в «C++»