Skip to main content
Senior
September 25, 2023
Solved

make[3]: *** No rule to make target 'CM7/TouchGFX/build/Riverdi_70STM32H7/Drivers/STM32H7xx_HAL_Dri

  • September 25, 2023
  • 3 replies
  • 2097 views

Hello,

I have a Riverdi screen with an embedded stm32H7. When I am trying to flash with the st-link the code to the screen I am getting this error. I need to mention that I didn't got this error before and the Makefile is auto generated. Could anyone help me to solve this problem? 

make[3]: *** No rule to make target 'CM7/TouchGFX/build/Riverdi_70STM32H7/Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_adc.o', needed by 'CM7/TouchGFX/build/bin/target.elf'. Stop.

Thank you in advance

This topic has been closed for replies.
Best answer by Osman SOYKURT

Hello @ngrigoriadis ,

I think you're going to the good direction then :)
You need to edit the makefile in the gcc folder, and include the headers you need.

I found these lines in the makefile of our partner TBS, I think you need to fill it with your header files :

 

include_paths := $(library_includes) \
	$(foreach comp, $(all_components), $(comp)/include) \
	$(foreach comp, $(touchgfx_generator_components), $(comp)/generated) \
	$(framework_includes) \
	$(cubemx_middlewares_path) \
	$(application_path)/Utilities/JPEG \
	$(application_path)/CM7/FATFS/App \
	$(application_path)/CM7/FATFS/Target \
	$(application_path)/CM7/USB_HOST/App \
	$(application_path)/CM7/USB_HOST/Target \
	$(application_path)/CM7/LIBJPEG/App \
	$(application_path)/CM7/LIBJPEG/Target \
	$(application_path)/CM7/TouchGFX/generated/videos/include \
	$(touchgfx_middlewares_path) \
	$(touchgfx_generator_components)

 

 

3 replies

Osman SOYKURT
ST Technical Moderator
September 25, 2023

Hello @ngrigoriadis ,

Is your project based on one of these partner TBSs? If yes, the makefile should already be ok and ready for compilation. Have you generated code from STM32CubeMX?

OsmanSOYKURT_0-1695653252428.png

" I need to mention that I didn't got this error before"  --> Can you tell us what have changed from before?

ST Software Developer | TouchGFX
Senior
September 26, 2023

Hello, I use this partner as you said in order to generate code to the touchgfx. I went to CUBEMX and make some changes like I remove fdcan and other peripherals that I don't want. Although I realize that I should make some changes to makefile in gcc folder. After I did that I overcome that obstacle. Although in touchgfx I configure LWIP and now I need to add this to the makefile because the generated code from touchgfx or the peripherals that automatically is generated don't contain lwip. In conclusion I managed to solve this problem by removing adc hal driver from the makefile and now I need to add to the make the folder that contains all the lwip header files. Can please help me with that?

 

Osman SOYKURT
Osman SOYKURTBest answer
ST Technical Moderator
October 3, 2023

Hello @ngrigoriadis ,

I think you're going to the good direction then :)
You need to edit the makefile in the gcc folder, and include the headers you need.

I found these lines in the makefile of our partner TBS, I think you need to fill it with your header files :

 

include_paths := $(library_includes) \
	$(foreach comp, $(all_components), $(comp)/include) \
	$(foreach comp, $(touchgfx_generator_components), $(comp)/generated) \
	$(framework_includes) \
	$(cubemx_middlewares_path) \
	$(application_path)/Utilities/JPEG \
	$(application_path)/CM7/FATFS/App \
	$(application_path)/CM7/FATFS/Target \
	$(application_path)/CM7/USB_HOST/App \
	$(application_path)/CM7/USB_HOST/Target \
	$(application_path)/CM7/LIBJPEG/App \
	$(application_path)/CM7/LIBJPEG/Target \
	$(application_path)/CM7/TouchGFX/generated/videos/include \
	$(touchgfx_middlewares_path) \
	$(touchgfx_generator_components)

 

 

ST Software Developer | TouchGFX