Can someone explain the mechanism that is used to define the include path for the compiler? I’m building an ESP32 project with local compilation. It seems that some paths are modified by various yaml file contents. Is that correct?
For example in my project FreeRTOS.h is located in the directory…
./deps/freertos/FreeRTOS/Source/include
but this directory is not included in the paths captured in build.log. The only two freertos entries listed in build.log are:
./deps/freertos/include
./deps/freertos/include/esp32
Neither directory includes FreeRTOS.h. The second directory doesn’t even exist on my system.
There is a mos.yaml file in the ./deps/freertos/include directory that contains the lines:
includes:
- FreeRTOS/Source/include
- FreeRTOS/Source/portable/${build_vars.FREERTOS_PORT}
- include/cmsis
This seems to indicate that these additional directories are somehow included in the path searched by the compiler.
How can I get an exact and complete path that the compiler is using to find include files?