[Build Error] "function1 not declared" in Screen1View despite correct declaration in .hpp
Hi everyone,
I'm facing a strange issue in my TouchGFX project. I added a new method function1() in my Screen1View class,
and when i create the definition of that function1() in screen1View.cpp it showing the function not declared i followed controllltech youtube tutorial but for me im stuck here.
i will share the .hpp and .cpp and error messages
error im getting
16:39:36 **** Incremental Build of configuration Debug for project STM32H735G-DK ****
make -j8 all
arm-none-eabi-g++ "C:/TouchGFXProjects/MyApplication_14/TouchGFX/gui/src/screen1_screen/Screen1View.cpp" -mcpu=cortex-m7 -std=gnu++14 -g3 -DUSE_HAL_DRIVER -DUSE_BPP=24 -DDEBUG -DSTM32H735xx -DUSE_PWR_DIRECT_SMPS_SUPPLY -c -I../../Core/Inc -I../../TouchGFX/App -I../../TouchGFX/target/generated -I../../TouchGFX/target -I../../Drivers/STM32H7xx_HAL_Driver/Inc -I../../Drivers/STM32H7xx_HAL_Driver/Inc/Legacy -I../../Middlewares/Third_Party/FreeRTOS/Source/include -I../../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I../../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../../Drivers/CMSIS/Device/ST/STM32H7xx/Include -I../../Drivers/CMSIS/Include -I../../Drivers/BSP/Components/Common -I../../Drivers/BSP/STM32H735G-DK -I../../Middlewares/ST/touchgfx/framework/include -I../../TouchGFX/generated/fonts/include -I../../TouchGFX/generated/gui_generated/include -I../../TouchGFX/generated/images/include -I../../TouchGFX/generated/texts/include -I../../TouchGFX/gui/include -I../../TouchGFX/generated/videos/include -I../../LIBJPEG/App -I../../LIBJPEG/Target -I../../Middlewares/Third_Party/LibJPEG/include -Os -ffunction-sections -fdata-sections -fno-exceptions -fno-rtti -fno-use-cxa-atexit -Wall -femit-class-debug-always -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Application/User/gui/Screen1View.d" -MT"Application/User/gui/Screen1View.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Application/User/gui/Screen1View.o"
C:/TouchGFXProjects/MyApplication_14/TouchGFX/gui/src/screen1_screen/Screen1View.cpp:19:6: error: no declaration matches 'void Screen1View::function1()'
19 | void Screen1View::function1()
| ^~~~~~~~~~~
C:/TouchGFXProjects/MyApplication_14/TouchGFX/gui/src/screen1_screen/Screen1View.cpp:19:6: note: no functions named 'void Screen1View::function1()'
In file included from C:/TouchGFXProjects/MyApplication_14/TouchGFX/gui/src/screen1_screen/Screen1View.cpp:1:
../../TouchGFX/gui/include/gui/screen1_screen/Screen1View.hpp:7:7: note: 'class Screen1View' defined here
7 | class Screen1View : public Screen1ViewBase
| ^~~~~~~~~~~
make: *** [Application/User/gui/subdir.mk:34: Application/User/gui/Screen1View.o] Error 1
"make -j8 all" terminated with exit code 2. Build might be incomplete.
16:39:37 Build Failed. 2 errors, 0 warnings. (took 860ms)
.hpp file
#ifndef SCREEN1VIEW_HPP
#define SCREEN1VIEW_HPP
#include <gui_generated/screen1_screen/Screen1ViewBase.hpp>
#include <gui/screen1_screen/Screen1Presenter.hpp>
class Screen1View : public Screen1ViewBase
{
public:
Screen1View();
virtual ~Screen1View() {}
virtual void setupScreen();
virtual void tearDownScreen();
virtual void function1();
protected:
};
#endif // SCREEN1VIEW_HPP
.cpp file below
#include <gui/screen1_screen/Screen1View.hpp>
Screen1View::Screen1View()
{
}
void Screen1View::setupScreen()
{
Screen1ViewBase::setupScreen();
}
void Screen1View::tearDownScreen()
{
Screen1ViewBase::tearDownScreen();
}
void Screen1View::function1()
{
}