Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


Why is stm32f4xx_hal_conf.h in a generated project always ignored by eclipse build (make)?

Hi SystemWorkbench for STM32 experts,
I’m strugging with an issue where my stm32f4xx_hal_conf.h file in the generated project (by New->C++ Project->Ac6 STM32 MCU Project) is always excluded by eclipse build tool.
When I modified the header file, the generated makefiles under Debug folder seemed to ignore it.
For instance, have a look at the following snip, which is a part of main.d (dependency) file.

src/main.o: ../src/main.c \
/Users/myname/Documents/workspace/test_project/inc/main.h \
/Users/myname/Documents/workspace/nucleo-f411re_hal_lib/HAL_Driver/Inc/stm32f4xx_hal.h \
/Users/myname/Documents/workspace/nucleo-f411re_hal_lib/HAL_Driver/Inc/stm32f4xx_hal_conf.h \
 :
 :

This is weird as stm32f4xx_hal_conf.h path is under nucleo-f411re_hal_lib project, which is definitely out of my project’s scope (test_project folder).
Is that the expected behavior? If so, what is the purpose of stm32f4xx_hal_conf.h in a project folder in SystemWorkbench for STM32 IDE?

When I use make files manually, I always use stm32f4xx_hal_conf.h in the project folder in order to configure project specific settings. And it worked fine without any problem. However, when I switched to use SystemWorkbench for STM32 IDE, I couldn’t make my make-file project work in the IDE. :-(

Any advices are appreciated. Thanks in advance.

===
Version:

Eclipse IDE for C/C++ Developers
Version: Mars.2 Release (4.5.2)
Build id: 20160218-0600

on macOSX 10.11.6

France

Hi,

stm32f4xx_hal_conf.h is in the library project nucleo-f411re_hal_lib that was created besides your project as it is used to configure the firmware itself; if you need to change it you should modify the one in the library project, not a copy in your application project. The idea is that the configuration is usually linked to your target board more than your application, so it is possible to share the firmwae library between several applications (and thus speed up application compilation). Having a copy in your application project could cause incoherencies between the version used to compile the firmware and the one used for your application code, if included directly...

You could also place everything in the application project when creating it by clicking the “As source in the application project” radio button on the firmware selection dialog; in this case your application project will include both your code and th firmware source code, including the stm32f4xx_hal_conf.h header file.

Hope this helps,

Bernard (Ac6)


Thanks. I understood the purpose of stm32f4xx_hal_conf.h in the library project.