Skip to main content
FTouq.1
Associate
March 19, 2020
Question

How to force include path update ?

  • March 19, 2020
  • 6 replies
  • 2378 views

Hello,

I use STMCube IDE v1.3.0 Build: 5720_20200220_1053 (UTC)

When building, the include path are not updated with the include path properties.

I notice this mis-alignement is caused in the cproject :

include path are correct here :

<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.26262030" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/CMSIS/Include"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/STM32L4xx_HAL_Driver/Inc/Legacy"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/STM32L4xx_HAL_Driver/Inc"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/CMSIS/Device/ST/STM32L4xx/Include"/>

<listOptionValue builtIn="false" value="../Core/Inc"/>

<listOptionValue builtIn="false" value="../Core/Inc/Acc"/>

<listOptionValue builtIn="false" value="../Core/Inc/AlgoItf"/>

<listOptionValue builtIn="false" value="../Core/Inc/Bluetooth"/>

<listOptionValue builtIn="false" value="../Core/Inc/Button"/>

<listOptionValue builtIn="false" value="../Core/Inc/Flash"/>

<listOptionValue builtIn="false" value="../Core/Inc/ISL"/>

<listOptionValue builtIn="false" value="../Core/Inc/Ouput"/>

<listOptionValue builtIn="false" value="../Core/Inc/PwrMgmt"/>

<listOptionValue builtIn="false" value="../Core/Drivers/CMSIS/Device/ST/STM32L4xx/Include"/>

<listOptionValue builtIn="false" value="../Core/Drivers/CMSIS/Include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/STM32L4xx_HAL_Driver/stm32l443xx/V1.11.0/Inc/"/>

<listOptionValue builtIn="false" value="../Core/Librairies/STM32L4xx_HAL_Driver/stm32l443xx/V1.11.0/Inc/Legacy"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/btpskrnl"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/btpsvend"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/btvs"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/hcitrans.dma"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/AUDIO/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/A2DP/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/AVCTP/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/AVRCP/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/GAVD/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/HDSET/include"/>

<listOptionValue builtIn="false" value="../Core/Librairies/Bluetopia/profiles/HFRE_16/include"/>

</option>

But are not aligned there :

<tool id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.1351960159" name="MCU GCC Compiler" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.1486773777">

<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.175873836" name="Include paths (-I)" superClass="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths" useByScannerDiscovery="false" valueType="includePath">

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/CMSIS/Include"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/STM32L4xx_HAL_Driver/Inc/Legacy"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/STM32L4xx_HAL_Driver/Inc"/>

<listOptionValue builtIn="false" value="C:/Users/fto/STM32Cube/Repository/STM32Cube_FW_L4_V1.15.1/Drivers/CMSIS/Device/ST/STM32L4xx/Include"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/Acc"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/AlgoItf"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/Bluetooth"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/Button"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/Flash"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/ISL"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/Output"/>

<listOptionValue builtIn="false" value="C:/Travail/Projets/ComCom/EclipseWorkspaces/STMCube_TPGE/ComCom/Core/Inc/PwrMgmt"/>

</option>

This topic has been closed for replies.

6 replies

TDK
Super User
March 19, 2020

Generally, if you clean and rebuild a project, everything gets updated.

"If you feel a post has answered your question, please click ""Accept as Solution""."
FTouq.1
FTouq.1Author
Associate
March 19, 2020

Thank you for your answer, but this is not the case. When building what I can see in the log, the include path are not what I set in the property window of STMCubeIDE. (Under Properties -> C/C++ Build -> settings -> Tool Setting tab -> MCU GCC compiler -> Include Path).

In the logs, following arm-none-eabi-gcc command, the arguments after -I are not what I set.

From what I see, the cproject contains 2 sections for the include path. This is was I wrote before.

The first section correspond to what I set in the window properties.

The second section correspond to what is used when I compile. It contains the resolved paths. But the resolved paths does not correspond to the relative path.

There is a mismatch somewhere cause by STMCubeIDE

Cartu38 OpenDev
Graduate II
March 23, 2020

Please could you share your full .cproject ?

I may only based on your limited current sharing advice to take care about build configuration you're relying on. Possibly doing some include path settings for one but building a second ...

I'm thinking to such because according your extract both are not related to same build configuration because IDs are not same here after:

+ id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.175873836"

+ id="com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.option.includepaths.26262030"

FTouq.1
FTouq.1Author
Associate
March 24, 2020

Thank you for helping.

Here is my .cproject file.

FTouq.1
FTouq.1Author
Associate
March 25, 2020

Indeed there is something odd with the folderInfo xml tag.

It is like I have a folder which is not part of the project and have a different configuration.

How can I align this folder with all the project ?

FTouq.1
FTouq.1Author
Associate
March 25, 2020

I found the problem.

I don't why but one of my folder had a different configuration than the project.

To fix this, I right click on the folder with the problem, then select Ressources configuration then click Reset to default.

@Cartu38 OpenDev​ Thank you for your answer which lead me to the path of solving.