PlatformIO Community

Libdeps hasn't fetched

Hello everyone! Just finished configuring the project and got the following message while compiling:
fatal error: Adafruit_GFX.h: No such file or directory

My config:

[platformio]
include_dir = Inc/
src_dir = Src/
lib_dir = Lib/
[env:genericSTM32F103C8]
platform = ststm32
board = genericSTM32F103C8
framework = stm32cube
upload_protocol = stlink
debug_tool = stlink
build_flags =
   -std=c++14
   -O1
lib_archive = no
lib_deps =
   Adafruit GFX Library

Verbose compiler log:

#include "..." search starts here:
#include <...> search starts here:
 Inc
 Src
 /Users/–/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Include
 /Users/–/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Device/ST/STM32F1xx/Include
 /Users/–/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Inc
 /Users/–/.platformio/packages/framework-stm32cube/f1/Drivers/BSP/Components/Common
 /Users/–/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/include
 /Users/–/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/include-fixed
 /Users/–/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/include
End of search list.

What is wrong with it and how to include $PROJECT_DIR/.pio/libdeps ?

I absolutely have no idea why the “.pio/libdeps” is not being fetched as a source dir…
I’ve tried adding lib_extra_dirs, changing lib_ldf_mode, neither ldf mode helps.

Any ideas?

Can you give the actual and complete verbose build log, as that doesn’t look quite right. Also, is the stm32cube framework Arduino compatible? I’ve not played with it, so am not familiar with it.

This is the build log for me using your config… as you can see it did install the Adafruit GFX Library into the project .libdeps folder, but the LDF thinks its incompatiable with the stm32cube framework…

> Executing task in folder lib-deps-test: platformio run --verbose <

Processing genericSTM32F103C8 (upload_protocol: stlink; build_flags: -std=c++14, -O1; lib_deps: Adafruit GFX Library; debug_tool: stlink; lib_archive: no; platform: ststm32; board: genericSTM32F103C8; framework: stm32cube)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
Library Storage: /home/pfeerick/Documents/PlatformIO/Projects/lib-deps-test/.piolibdeps
LibraryManager: Installing id=13
Downloading  [####################################]  100%          
Unpacking  [####################################]  100%
CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/genericSTM32F103C8.html
PLATFORM: ST STM32 > STM32F103C8 (20k RAM. 64k Flash)
HARDWARE: STM32F103C8T6 72MHz 20KB RAM (64KB Flash)
DEBUG: CURRENT(stlink) EXTERNAL(blackmagic, jlink, stlink)
Warning! Cannot find a linker script for the required board! Firmware will be linked with a default linker script!
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(chain) COMPATIBILITY(soft)
Framework incompatible library /home/pfeerick/Documents/PlatformIO/Projects/lib-deps-test/.piolibdeps/Adafruit GFX Library_ID13
Framework incompatible library /home/pfeerick/.platformio/lib/TelnetSpy_ID6236
Collected 11 compatible libraries
More details about "Library Compatibility Mode": https://docs.platformio.org/page/librarymanager/ldf.html#ldf-compat-mode
Scanning dependencies...
No dependencies
arm-none-eabi-g++ -o .pioenvs/genericSTM32F103C8/src/main.o -c -std=c++14 -fno-rtti -fno-exceptions -O1 -Os -ffunction-sections -fdata-sections -Wall -mthumb -mcpu=cortex-m3 -nostdlib -DPLATFORMIO=30607 -DSTM32F103xB -DUSE_HAL_DRIVER -DF_CPU=72000000L -IInc -ISrc -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/BSP/Components/Common Src/main.cpp
Src/main.cpp:1:10: fatal error: Arduino.h: No such file or directory

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

#include <Arduino.h>
^~~~~~~~~~~
compilation terminated.
arm-none-eabi-gcc -o .pioenvs/genericSTM32F103C8/FrameworkHALDriver/Src/stm32f1xx_hal_can.o -c -O1 -Os -ffunction-sections -fdata-sections -Wall -mthumb -mcpu=cortex-m3 -nostdlib -DPLATFORMIO=30607 -DSTM32F103xB -DUSE_HAL_DRIVER -DF_CPU=72000000L -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/BSP/Components/Common /home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c
arm-none-eabi-gcc -o .pioenvs/genericSTM32F103C8/FrameworkHALDriver/Src/stm32f1xx_hal_cec.o -c -O1 -Os -ffunction-sections -fdata-sections -Wall -mthumb -mcpu=cortex-m3 -nostdlib -DPLATFORMIO=30607 -DSTM32F103xB -DUSE_HAL_DRIVER -DF_CPU=72000000L -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/BSP/Components/Common /home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cec.c
*** [.pioenvs/genericSTM32F103C8/src/main.o] Error 1
arm-none-eabi-gcc -o .pioenvs/genericSTM32F103C8/FrameworkHALDriver/Src/stm32f1xx_hal_cortex.o -c -O1 -Os -ffunction-sections -fdata-sections -Wall -mthumb -mcpu=cortex-m3 -nostdlib -DPLATFORMIO=30607 -DSTM32F103xB -DUSE_HAL_DRIVER -DF_CPU=72000000L -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/BSP/Components/Common /home/pfeerick/.platformio/packages/framework-stm32cube/f1/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c
==================================================================== [ERROR] Took 1.02 seconds ====================================================================
The terminal process terminated with exit code: 1

Hi @pfeerick! No, it is not Arduino compatible. Hence another question: how to identify framework-stm32cube compatible library?
Is there any manual on that topic or an obvious rule?
Thanks~

No manual AFAIK (well, there sort of is… there is the platformio lib search command line syntax), but when you’re using the PlatformIO Library Registry search page you can filter the results by framework and platform, among other things. You can either enter “framework:stm32cube” or use the drop-downs to the right of the page just below the search box.

i.e., the registered stm32cube compatible libraries