I’ve got 2 libraries in the default lib
folder that is generated when making a new project. One is included in the other, but only the first one is found and compiled which results in a failed compilation.
This is the compiler output:
[05/15/18 18:24:59] Processing lolin32 (platform: espressif32; board: lolin32; framework: espidf)
Verbose mode can be enabled via `-v, --verbose` option
PLATFORM: Espressif 32 > WEMOS LOLIN32
SYSTEM: ESP32 240MHz 288KB RAM (1.25MB Flash)
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(chain) COMPATIBILITY(light)
Collected 1 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <wifimanager>
Compiling .pioenvs\lolin32\src\main.o
src\main.c:6:22: fatal error: mongoose.h: No such file or directory
******************************************************************
* Looking for mongoose.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:mongoose.h"
* Web > https://platformio.org/lib/search?query=header:mongoose.h
*
******************************************************************
compilation terminated.
Compiling .pioenvs\lolin32\bootloaderSupport\src\secure_boot_signatures.o
Compiling .pioenvs\lolin32\bootloaderLog\log.o
*** [.pioenvs\lolin32\src\main.o] Error 1
Compiling .pioenvs\lolin32\bootloaderSPIFlash\spi_flash_rom_patch.o
[ERROR] Took 6.60 seconds
As you can see only wifimanager is found, but the library it’s trying to include from the same lib directory, mongoose, isn’t found. I feel like the ‘compatible’ is important, but what would make a library compatible or more importantly, incompatible?
EDIT: I’m using PIO inside Atom.