This is a library to drive an OLED that I have. I can do it on Arduino IDE so I thought I would try platformio on vscode. I’ve been using platformio on vscode for teensy development. So after installing ssd1305 library and adafruit gfx library, I was reminded that I was missing some .h files. I went down the path of gfx library dependency and installed adafruit busio, which has no dependency. After that, here is the compilation message. It seems that platformio can’t find simple files like Wire.h that should be in the core folder. I’m using ESP32 boards so I installed the package for that. I have a blank setup and loop just to see if it compiles and it doesn’t. I wonder what went wrong.
My code:
#include <Arduino.h>
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
Compilation message:
> Executing task: C:\Users\user\.platformio\penv\Scripts\platformio.exe run --environment esp32doit-devkit-v1 <
Processing esp32doit-devkit-v1 (platform: espressif32; board: esp32doit-devkit-v1; framework: arduino)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Library Manager: Installing adafruit/Adafruit SSD1305 @ ^2.2.1
Unpacking [####################################] 100%
Library Manager: Adafruit SSD1305@2.2.1 has been installed!
Library Manager: Resolving dependencies...
Library Manager: Installing Adafruit GFX Library
Unpacking [####################################] 100%
Library Manager: Adafruit GFX Library@1.11.1 has been installed!
Library Manager: Resolving dependencies...
Library Manager: Installing Adafruit BusIO
Unpacking [####################################] 100%
Library Manager: Adafruit BusIO@1.11.6 has been installed!
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32doit-devkit-v1.html
PLATFORM: Espressif 32 (4.2.0) > DOIT ESP32 DEVKIT V1
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 @ 3.20002.220503 (2.0.2)
- tool-esptoolpy @ 1.30300.0 (3.3.0)
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch3
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 34 compatible libraries
Scanning dependencies...
Dependency Graph
|-- Adafruit SSD1305 @ 2.2.1
| |-- Adafruit GFX Library @ 1.11.1
| | |-- Adafruit BusIO @ 1.11.6
| |-- Adafruit BusIO @ 1.11.6
|-- Adafruit GFX Library @ 1.11.1
| |-- Adafruit BusIO @ 1.11.6
|-- Adafruit BusIO @ 1.11.6
Building in release mode
Compiling .pio\build\esp32doit-devkit-v1\src\main.cpp.o
Generating partitions .pio\build\esp32doit-devkit-v1\partitions.bin
Compiling .pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_I2CDevice.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_SPIDevice.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\Adafruit_GFX.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\Adafruit_GrayOLED.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\Adafruit_SPITFT.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\glcdfont.c.o
Compiling .pio\build\esp32doit-devkit-v1\lib4c7\Adafruit SSD1305\Adafruit_SSD1305.cpp.o
Archiving .pio\build\esp32doit-devkit-v1\libFrameworkArduinoVariant.a
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_BusIO_Register.h:9,
from .pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_BusIO_Register.cpp:1:
.pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_I2CDevice.h:5:10: fatal error: Wire.h: No such file or directory
**************************************************************
* Looking for Wire.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:Wire.h"
* Web > https://registry.platformio.org/search?q=header:Wire.h
*
**************************************************************
#include <Wire.h>
^~~~~~~~
compilation terminated.
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_I2CDevice.cpp:1:
.pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_I2CDevice.h:5:10: fatal error: Wire.h: No such file or directory
**************************************************************
* Looking for Wire.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:Wire.h"
* Web > https://registry.platformio.org/search?q=header:Wire.h
*
**************************************************************
#include <Wire.h>
^~~~~~~~
compilation terminated.
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_SPIDevice.cpp:1:
.pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_SPIDevice.h:9:10: fatal error: SPI.h: No such file or directory
*************************************************************
* Looking for SPI.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:SPI.h"
* Web > https://registry.platformio.org/search?q=header:SPI.h
*
*************************************************************
#include <SPI.h>
^~~~~~~
compilation terminated.
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\Esp.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\FirmwareMSC.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\FunctionalInterrupt.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\HWCDC.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\HardwareSerial.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\IPv6Address.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\MD5Builder.cpp.o
Compiling .pio\build\esp32doit-devkit-v1\FrameworkArduino\Print.cpp.o
*** [.pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_SPIDevice.cpp.o] Error 1
*** [.pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_I2CDevice.cpp.o] Error 1
*** [.pio\build\esp32doit-devkit-v1\lib68e\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o] Error 1
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit GFX Library/Adafruit_GrayOLED.h:30,
from .pio/libdeps/esp32doit-devkit-v1/Adafruit GFX Library/Adafruit_GrayOLED.cpp:20:
.pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_I2CDevice.h:5:10: fatal error: Wire.h: No such file or directory
**************************************************************
* Looking for Wire.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:Wire.h"
* Web > https://registry.platformio.org/search?q=header:Wire.h
*
**************************************************************
#include <Wire.h>
^~~~~~~~
compilation terminated.
*** [.pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\Adafruit_GrayOLED.cpp.o] Error 1
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit GFX Library/Adafruit_SPITFT.cpp:36:
.pio/libdeps/esp32doit-devkit-v1/Adafruit GFX Library/Adafruit_SPITFT.h:26:10: fatal error: SPI.h: No such file or directory
*************************************************************
* Looking for SPI.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:SPI.h"
* Web > https://registry.platformio.org/search?q=header:SPI.h
*
*************************************************************
#include <SPI.h>
^~~~~~~
compilation terminated.
*** [.pio\build\esp32doit-devkit-v1\lib44e\Adafruit GFX Library\Adafruit_SPITFT.cpp.o] Error 1
In file included from .pio/libdeps/esp32doit-devkit-v1/Adafruit GFX Library/Adafruit_GrayOLED.h:30,
from .pio/libdeps/esp32doit-devkit-v1/Adafruit SSD1305/Adafruit_SSD1305.h:18,
from .pio/libdeps/esp32doit-devkit-v1/Adafruit SSD1305/Adafruit_SSD1305.cpp:19:
.pio/libdeps/esp32doit-devkit-v1/Adafruit BusIO/Adafruit_I2CDevice.h:5:10: fatal error: Wire.h: No such file or directory
**************************************************************
* Looking for Wire.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:Wire.h"
* Web > https://registry.platformio.org/search?q=header:Wire.h
*
**************************************************************
#include <Wire.h>
^~~~~~~~
compilation terminated.
*** [.pio\build\esp32doit-devkit-v1\lib4c7\Adafruit SSD1305\Adafruit_SSD1305.cpp.o] Error 1
======================================================================================= [FAILED] Took 5.80 seconds =======================================================================================The terminal process "C:\Users\user\.platformio\penv\Scripts\platformio.exe 'run', '--environment', 'esp32doit-devkit-v1'" terminated with exit code: 1.
Terminal will be reused by tasks, press any key to close it.