PlatformIO Community

I installed BSP_DISCO_F746NG, all dependency errors are resolved but one 1 header file

I am migrating to platformio, so I guess I missed something…

After I installed the BSP_DISCO_F746NG library all dependency errors are resolved but one:
cannot open source file “stm32746g_discovery_lcd.h”

My platformio.ini

    [env:disco_f746ng]
platform = ststm32 
board = disco_f746ng
framework = mbed
lib_deps =
      OneWire
      BSP_DISCO_F746NG
      LCD_DISCO_F746NG
      TS_DISCO_F746NG

In main.ccp
#include <mbed.h>
#include “LCD_DISCO_F746NG.h”
#include “TS_DISCO_F746NG.h”
LCD_DISCO_F746NG lcd;
TS_DISCO_F746NG ts;

Does the project compile and this is just a VSCode Intellisense error? The header is definitely in the BSP_DISCO_F76NG library.

https://os.mbed.com/teams/ST/code/BSP_DISCO_F746NG/docs/tip/stm32746g__discovery__lcd_8h_source.html

Also listed as a header in the PlatformIO library

If it’s a compilation error, can you show the full error message?

No it’s not just Intellisense . It really does not build:

After building:

    In file included from .pio\libdeps\disco_f746ng\LCD_DISCO_F746NG_ID2433\LCD_DISCO_F746NG.cpp:19:0:
    .pio\libdeps\disco_f746ng\LCD_DISCO_F746NG_ID2433\LCD_DISCO_F746NG.h:25:10: fatal error: stm32746g_discovery_lcd.h: No such file or directory
 
    #include "stm32746g_discovery_lcd.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
    In file included from .pio\libdeps\disco_f746ng\TS_DISCO_F746NG_ID2804\TS_DISCO_F746NG.cpp:19:0:
    .pio\libdeps\disco_f746ng\TS_DISCO_F746NG_ID2804\TS_DISCO_F746NG.h:25:10: fatal error: stm32746g_discovery_ts.h: No such file or directory


*********************************************************************************
* Looking for stm32746g_discovery_lcd.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:stm32746g_discovery_lcd.h"
* Web  > https://platformio.org/lib/search?query=header:stm32746g_discovery_lcd.h
*
*********************************************************************************


     #include "stm32746g_discovery_ts.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    compilation terminated.
    *** [.pio\build\disco_f746ng\lib4b4\LCD_DISCO_F746NG_ID2433\LCD_DISCO_F746NG.o] Error 1
    *** [.pio\build\disco_f746ng\lib532\TS_DISCO_F746NG_ID2804\TS_DISCO_F746NG.o] Error 1
    In file included from src\main.cpp:6:0:
    .pio\libdeps\disco_f746ng\LCD_DISCO_F746NG_ID2433/LCD_DISCO_F746NG.h:25:10: fatal   error: stm32746g_discovery_lcd.h: No such file or directory

The Problems window:

cannot open source file “stm32746g_discovery_lcd.h” (dependency of “LCD_DISCO_F746NG.h”)
cannot open source file “stm32746g_discovery_ts.h” (dependency of “TS_DISCO_F746NG.h”)

    platformio lib search "header:stm32746g_discovery_lcd.h"
    
    Found 2 libraries:
    qpc
    ===
    #ID: 5988
    QP/C real-time framework/RTOS for embedded systems based on active objects (actors) and       hierarchical state machines


    BSP_DISCO_F746NG
    ================
    #ID: 2210
    STM32746G-Discovery board drivers V1.0.0

Yesterday I’ve had a similar issue with BSP_DISCO_F769. @maxgerhardt, you’re post in another thread here pointed me in the right direction (thanks!): the library.json of that library does not include the “build” section, where the additional include search paths are specified. Manually adding the lines you’ve suggested (adapted for the actual devices present on the 769NI) did the trick, my project compiles now.

Maybe this helps, here, too?

Since I’m quite new to using platformio, this may be a silly question: where could one suggest a change of the library.json? Submit an issue against platformio-libmirror, since the file is probably autogenerated from ST’s mbed sources?