Implicit Dependency Error

Getting an error that’s really annoying me. :slight_smile:

I have a “bootstrap” project I use to start out my projects. Standard stuff for all my projects. So here’s what I did:

  • Create a new empty GitHub project
  • Clone to my computer
  • Copy all files and folders from my bootstrap (except for .pio and .vscode) into the project folder
  • Open in VSCode/PlatformIO

At this point all seems fine. If I compile, I get the following error:

*** [.pio\build\lolin_d32\firmware.elf] Implicit dependency `C:\Users\xxxxxxxx\.platformio\platforms\espressif32\builder\Warning:' not found, needed by target `.pio\build\lolin_d32\firmware.elf'.

I look in that folder, and there is no firmware.elf being created.

I can completely wipe the source files to something like this

void setup() {;}
void loop() {;}

… and I get the same error.

Keep in mind this is a project which compiles just fine in the original folder.

I did disable my antivirus (Bitdefender) which has caused weird issues before.

I am quite sure I’m doing something wrong but I am not sure what. So confused!

1 Like

Can you provide the full context:

  • Full build log
  • Contents of platformio.ini
  • Project structure (directory view)

Thanks for helping @manuelbl!

Build log:

> Executing task: C:\Users\xxxxxxxx\.platformio\penv\Scripts\platformio.exe run <

Processing lolin_d32 (framework: arduino; platform: espressif32; board: lolin_d32)
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/lolin_d32.html
PLATFORM: Espressif 32 1.12.4 > WEMOS LOLIN D32
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (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.10004.200129 (1.0.4)
 - tool-esptoolpy 1.20600.0 (2.6.0)
 - toolchain-xtensa32 2.50200.80 (5.2.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 32 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <ArduinoLog> 1.0.3 #13eeea1
|-- <ESP Async WebServer> 1.2.3 #1304662    
|   |-- <AsyncTCP> 1.1.1 #81c1f43
|   |-- <FS> 1.0
|   |-- <WiFi> 1.0
|-- <AsyncWiFiManager> 1.0.0 #1f00859       
|   |-- <AsyncTCP> 1.1.1 #81c1f43
|   |-- <DNSServer> 1.1.0
|   |   |-- <WiFi> 1.0
|   |-- <ESP Async WebServer> 1.2.3 #1304662
|   |   |-- <AsyncTCP> 1.1.1 #81c1f43       
|   |   |-- <FS> 1.0
|   |   |-- <WiFi> 1.0
|   |-- <ESPmDNS> 1.0
|   |   |-- <WiFi> 1.0
|   |-- <WebServer> 1.0
|   |   |-- <WiFi> 1.0
|   |   |-- <FS> 1.0
|   |-- <WiFi> 1.0
|-- <asyncHTTPrequest> 1.2.1 #b350f96
|   |-- <AsyncTCP> 1.1.1 #81c1f43
|-- <CircularBuffer> 1.3.3 #98e638a
|-- <ESPmDNS> 1.0
|   |-- <WiFi> 1.0
|-- <WiFi> 1.0
|-- <Ticker> 1.1
|-- <FS> 1.0
|-- <SPIFFS> 1.0
|   |-- <FS> 1.0
Building in debug mode
Compiling .pio\build\lolin_d32\src\main.cpp.o
Compiling .pio\build\lolin_d32\src\mdnshandler.cpp.o
Compiling .pio\build\lolin_d32\src\ntphandler.cpp.o
Compiling .pio\build\lolin_d32\src\serialhandler.cpp.o
Compiling .pio\build\lolin_d32\src\tools.cpp.o
Compiling .pio\build\lolin_d32\src\version.cpp.o
Compiling .pio\build\lolin_d32\src\webpagehandler.cpp.o
Compiling .pio\build\lolin_d32\src\wifihandler.cpp.o
Generating partitions .pio\build\lolin_d32\partitions.bin
Compiling .pio\build\lolin_d32\lib076\ArduinoLog\ArduinoLog.cpp.o
Compiling .pio\build\lolin_d32\libe43\AsyncTCP\AsyncTCP.cpp.o
Compiling .pio\build\lolin_d32\lib6c2\FS\FS.cpp.o
Compiling .pio\build\lolin_d32\lib6c2\FS\vfs_api.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\ETH.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFi.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiAP.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiClient.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiMulti.cpp.o
Archiving .pio\build\lolin_d32\lib076\libArduinoLog.a
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiScan.cpp.o
Archiving .pio\build\lolin_d32\libe43\libAsyncTCP.a
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiServer.cpp.o
Archiving .pio\build\lolin_d32\lib6c2\libFS.a
Compiling .pio\build\lolin_d32\libaeb\WiFi\WiFiUdp.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\AsyncEventSource.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\AsyncWebSocket.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\SPIFFSEditor.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\WebAuthentication.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\WebHandlers.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\WebRequest.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\WebResponses.cpp.o
Compiling .pio\build\lolin_d32\lib70d\ESP Async WebServer\WebServer.cpp.o
Compiling .pio\build\lolin_d32\lib92e\DNSServer\DNSServer.cpp.o
Compiling .pio\build\lolin_d32\lib005\ESPmDNS\ESPmDNS.cpp.o
Compiling .pio\build\lolin_d32\lib667\WebServer\Parsing.cpp.o
Archiving .pio\build\lolin_d32\libaeb\libWiFi.a
Compiling .pio\build\lolin_d32\lib667\WebServer\WebServer.cpp.o
Compiling .pio\build\lolin_d32\lib667\WebServer\detail\mimetable.cpp.o
Compiling .pio\build\lolin_d32\lib38f\AsyncWiFiManager\AsyncWiFiManager.cpp.o
Compiling .pio\build\lolin_d32\lib42a\asyncHTTPrequest\asyncHTTPrequest.cpp.o
Compiling .pio\build\lolin_d32\lib42a\asyncHTTPrequest\xbuf.cpp.o
Archiving .pio\build\lolin_d32\lib6ac\libCircularBuffer.a
Compiling .pio\build\lolin_d32\lib28a\Ticker\Ticker.cpp.o
Compiling .pio\build\lolin_d32\libc5f\SPIFFS\SPIFFS.cpp.o
Archiving .pio\build\lolin_d32\lib92e\libDNSServer.a
Archiving .pio\build\lolin_d32\lib70d\libESP Async WebServer.a
Archiving .pio\build\lolin_d32\libFrameworkArduinoVariant.a
Archiving .pio\build\lolin_d32\lib005\libESPmDNS.a
Compiling .pio\build\lolin_d32\FrameworkArduino\Esp.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\FunctionalInterrupt.cpp.o
Archiving .pio\build\lolin_d32\lib667\libWebServer.a
Compiling .pio\build\lolin_d32\FrameworkArduino\HardwareSerial.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\IPv6Address.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\MD5Builder.cpp.o
Archiving .pio\build\lolin_d32\lib42a\libasyncHTTPrequest.a
Compiling .pio\build\lolin_d32\FrameworkArduino\Print.cpp.o
Archiving .pio\build\lolin_d32\lib28a\libTicker.a
Archiving .pio\build\lolin_d32\libc5f\libSPIFFS.a
Archiving .pio\build\lolin_d32\lib38f\libAsyncWiFiManager.a
Compiling .pio\build\lolin_d32\FrameworkArduino\Stream.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\StreamString.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\WString.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\base64.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\cbuf.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-adc.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-bt.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-cpu.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-dac.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-gpio.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-i2c.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-ledc.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-matrix.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-misc.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-psram.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-rmt.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-sigmadelta.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-spi.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-time.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-timer.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-touch.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\esp32-hal-uart.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\libb64\cdecode.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\libb64\cencode.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\main.cpp.o
Compiling .pio\build\lolin_d32\FrameworkArduino\stdlib_noniso.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\wiring_pulse.c.o
Compiling .pio\build\lolin_d32\FrameworkArduino\wiring_shift.c.o
Archiving .pio\build\lolin_d32\libFrameworkArduino.a
*** [.pio\build\lolin_d32\firmware.elf] Implicit dependency `C:\Users\xxxxxxxx\.platformio\platforms\espressif32\builder\Warning:' not found, needed by target `.pio\build\lolin_d32\firmware.elf'.
============================================================================================= [FAILED] Took 30.50 seconds =============================================================================================

Environment         Status    Duration
------------------  --------  ------------
d1_mini             IGNORED
lolin_d32           FAILED    00:00:30.496
heltec_wifi_kit_32  IGNORED
======================================================================================== 1 failed, 0 succeeded in 00:00:30.496 ========================================================================================
The terminal process "C:\Users\xxxxxxxx\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1.

Terminal will be reused by tasks, press any key to close it.

Contents of platformio.ini:

; PlatformIO Project Configuration File
;
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html

[platformio]
; default_envs = heltec_wifi_kit_32
; default_envs = d1_mini
default_envs = lolin_d32

[common_env_data]
upload_speed = 921600
monitor_speed = 115200
framework = arduino
build_unflags = 
build_flags =
    !python tools\git_rev.py
    -DBAUD=${common_env_data.monitor_speed}
lib_deps = 
    https://github.com/lbussy/Arduino-Log.git
    https://github.com/lbussy/ESPAsyncWebServer.git
    https://github.com/lbussy/AsyncWiFiManager.git
    https://github.com/lbussy/asyncHTTPrequest.git
    https://github.com/lbussy/CircularBuffer.git
extra_scripts = 
build_type = debug
monitor_filters = 
    log2file

[env:d1_mini]
upload_speed = ${common_env_data.upload_speed}
monitor_speed = ${common_env_data.monitor_speed}
framework = ${common_env_data.framework}
build_unflags = ${common_env_data.build_unflags}
build_flags = ${common_env_data.build_flags}
extra_scripts = ${common_env_data.extra_scripts}
lib_deps = ${common_env_data.lib_deps}
build_type = ${common_env_data.build_type}
monitor_filters = ${common_env_data.monitor_filters}
platform = espressif8266
board = d1_mini

[env:lolin_d32]
upload_speed = ${common_env_data.upload_speed}
monitor_speed = ${common_env_data.monitor_speed}
framework = ${common_env_data.framework}
build_unflags = ${common_env_data.build_unflags}
build_flags = ${common_env_data.build_flags}
extra_scripts = ${common_env_data.extra_scripts}
lib_deps = ${common_env_data.lib_deps}
build_type = ${common_env_data.build_type}
monitor_filters =
    ${common_env_data.monitor_filters}
    esp32_exception_decoder
platform = espressif32
board = lolin_d32

[env:heltec_wifi_kit_32]
upload_speed = ${common_env_data.upload_speed}
monitor_speed = ${common_env_data.monitor_speed}
framework = ${common_env_data.framework}
build_unflags = ${common_env_data.build_unflags}
build_flags = ${common_env_data.build_flags}
extra_scripts = ${common_env_data.extra_scripts}
lib_deps = ${common_env_data.lib_deps}
build_type = ${common_env_data.build_type}
monitor_filters =
    ${common_env_data.monitor_filters}
    esp32_exception_decoder
platform = espressif32
board = heltec_wifi_kit_32

Project Structure:

C:.
├───.pio
│   ├───build
│   └───libdeps
│       └───lolin_d32
│           ├───ArduinoLog
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───13
│           │   │   │   ├───16
│           │   │   │   ├───23
│           │   │   │   ├───4d
│           │   │   │   ├───6c
│           │   │   │   ├───7b
│           │   │   │   ├───8c
│           │   │   │   ├───94
│           │   │   │   ├───a2
│           │   │   │   ├───b4
│           │   │   │   ├───e0
│           │   │   │   ├───e7
│           │   │   │   ├───f3
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   └───examples
│           │       └───Log
│           ├───asyncHTTPrequest
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───27
│           │   │   │   ├───37
│           │   │   │   ├───4d
│           │   │   │   ├───52
│           │   │   │   ├───58
│           │   │   │   ├───63
│           │   │   │   ├───64
│           │   │   │   ├───70
│           │   │   │   ├───77
│           │   │   │   ├───94
│           │   │   │   ├───9e
│           │   │   │   ├───a3
│           │   │   │   ├───a9
│           │   │   │   ├───b3
│           │   │   │   ├───bf
│           │   │   │   ├───c8
│           │   │   │   ├───ce
│           │   │   │   ├───db
│           │   │   │   ├───e6
│           │   │   │   ├───eb
│           │   │   │   ├───ed
│           │   │   │   ├───f4
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   ├───.pio
│           │   │   └───build
│           │   ├───.vscode
│           │   ├───lib
│           │   ├───sample
│           │   └───src
│           ├───AsyncTCP
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───15
│           │   │   │   ├───17
│           │   │   │   ├───36
│           │   │   │   ├───37
│           │   │   │   ├───5c
│           │   │   │   ├───61
│           │   │   │   ├───65
│           │   │   │   ├───6e
│           │   │   │   ├───7e
│           │   │   │   ├───81
│           │   │   │   ├───89
│           │   │   │   ├───97
│           │   │   │   ├───9b
│           │   │   │   ├───a4
│           │   │   │   ├───ac
│           │   │   │   ├───b7
│           │   │   │   ├───bb
│           │   │   │   ├───ce
│           │   │   │   ├───cf
│           │   │   │   ├───d5
│           │   │   │   ├───d9
│           │   │   │   ├───ec
│           │   │   │   ├───f5
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   ├───.github
│           │   │   ├───scripts
│           │   │   └───workflows
│           │   └───src
│           ├───AsyncWiFiManager
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───07
│           │   │   │   ├───0f
│           │   │   │   ├───12
│           │   │   │   ├───16
│           │   │   │   ├───19
│           │   │   │   ├───1d
│           │   │   │   ├───1f
│           │   │   │   ├───28
│           │   │   │   ├───34
│           │   │   │   ├───3b
│           │   │   │   ├───45
│           │   │   │   ├───4b
│           │   │   │   ├───51
│           │   │   │   ├───57
│           │   │   │   ├───5a
│           │   │   │   ├───60
│           │   │   │   ├───67
│           │   │   │   ├───6a
│           │   │   │   ├───71
│           │   │   │   ├───72
│           │   │   │   ├───7b
│           │   │   │   ├───7c
│           │   │   │   ├───80
│           │   │   │   ├───81
│           │   │   │   ├───86
│           │   │   │   ├───8c
│           │   │   │   ├───90
│           │   │   │   ├───9a
│           │   │   │   ├───9c
│           │   │   │   ├───9d
│           │   │   │   ├───9e
│           │   │   │   ├───9f
│           │   │   │   ├───a2
│           │   │   │   ├───a3
│           │   │   │   ├───ac
│           │   │   │   ├───af
│           │   │   │   ├───b6
│           │   │   │   ├───b7
│           │   │   │   ├───b8
│           │   │   │   ├───bd
│           │   │   │   ├───bf
│           │   │   │   ├───c0
│           │   │   │   ├───c2
│           │   │   │   ├───c6
│           │   │   │   ├───cf
│           │   │   │   ├───d3
│           │   │   │   ├───d5
│           │   │   │   ├───d6
│           │   │   │   ├───e2
│           │   │   │   ├───e5
│           │   │   │   ├───e8
│           │   │   │   ├───e9
│           │   │   │   ├───ea
│           │   │   │   ├───ed
│           │   │   │   ├───f0
│           │   │   │   ├───fa
│           │   │   │   ├───fb
│           │   │   │   ├───fc
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   ├───.github
│           │   ├───.vscode
│           │   ├───examples
│           │   │   ├───Advanced
│           │   │   ├───AutoConnect
│           │   │   │   ├───AutoConnectWithFeedbackLED
│           │   │   │   ├───AutoConnectWithFSParameters
│           │   │   │   └───AutoConnectWithFSParametersAndCustomIP
│           │   │   ├───Basic
│           │   │   ├───DEV
│           │   │   │   └───OnDemandConfigPortal
│           │   │   ├───NonBlocking
│           │   │   │   ├───AutoConnectNonBlocking
│           │   │   │   ├───AutoConnectNonBlockingwParams
│           │   │   │   └───OnDemandNonBlocking
│           │   │   ├───Old_examples
│           │   │   │   ├───AutoConnectWithFeedback
│           │   │   │   ├───AutoConnectWithReset
│           │   │   │   ├───AutoConnectWithStaticIP
│           │   │   │   └───AutoConnectWithTimeout
│           │   │   ├───OnDemand
│           │   │   │   ├───OnDemandConfigPortal
│           │   │   │   └───OnDemandWebPortal
│           │   │   └───ParamsChildClass
│           │   ├───extras
│           │   ├───include
│           │   ├───src
│           │   └───travis
│           ├───CircularBuffer
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───01
│           │   │   │   ├───02
│           │   │   │   ├───0a
│           │   │   │   ├───0d
│           │   │   │   ├───2a
│           │   │   │   ├───2b
│           │   │   │   ├───38
│           │   │   │   ├───56
│           │   │   │   ├───62
│           │   │   │   ├───66
│           │   │   │   ├───68
│           │   │   │   ├───82
│           │   │   │   ├───8c
│           │   │   │   ├───8f
│           │   │   │   ├───90
│           │   │   │   ├───98
│           │   │   │   ├───9b
│           │   │   │   ├───9f
│           │   │   │   ├───a0
│           │   │   │   ├───ab
│           │   │   │   ├───b1
│           │   │   │   ├───bd
│           │   │   │   ├───c5
│           │   │   │   ├───d9
│           │   │   │   ├───dd
│           │   │   │   ├───e1
│           │   │   │   ├───e8
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   └───examples
│           │       ├───CircularBuffer
│           │       ├───EventLogging
│           │       ├───Interrupts
│           │       ├───Object
│           │       ├───Queue
│           │       ├───Stack
│           │       ├───Struct
│           │       └───Test
│           ├───ESP Async WebServer
│           │   ├───.git
│           │   │   ├───hooks
│           │   │   ├───info
│           │   │   ├───logs
│           │   │   │   └───refs
│           │   │   │       ├───heads
│           │   │   │       └───remotes
│           │   │   │           └───origin
│           │   │   ├───objects
│           │   │   │   ├───04
│           │   │   │   ├───09
│           │   │   │   ├───11
│           │   │   │   ├───13
│           │   │   │   ├───1f
│           │   │   │   ├───26
│           │   │   │   ├───27
│           │   │   │   ├───28
│           │   │   │   ├───2f
│           │   │   │   ├───31
│           │   │   │   ├───34
│           │   │   │   ├───35
│           │   │   │   ├───43
│           │   │   │   ├───4c
│           │   │   │   ├───52
│           │   │   │   ├───59
│           │   │   │   ├───5a
│           │   │   │   ├───5b
│           │   │   │   ├───64
│           │   │   │   ├───68
│           │   │   │   ├───6c
│           │   │   │   ├───71
│           │   │   │   ├───75
│           │   │   │   ├───7b
│           │   │   │   ├───7c
│           │   │   │   ├───92
│           │   │   │   ├───95
│           │   │   │   ├───96
│           │   │   │   ├───9a
│           │   │   │   ├───9e
│           │   │   │   ├───a0
│           │   │   │   ├───a2
│           │   │   │   ├───a8
│           │   │   │   ├───a9
│           │   │   │   ├───ab
│           │   │   │   ├───b0
│           │   │   │   ├───bb
│           │   │   │   ├───bd
│           │   │   │   ├───bf
│           │   │   │   ├───c0
│           │   │   │   ├───c3
│           │   │   │   ├───c4
│           │   │   │   ├───ce
│           │   │   │   ├───cf
│           │   │   │   ├───d1
│           │   │   │   ├───d6
│           │   │   │   ├───da
│           │   │   │   ├───e1
│           │   │   │   ├───e7
│           │   │   │   ├───eb
│           │   │   │   ├───ec
│           │   │   │   ├───f2
│           │   │   │   ├───f3
│           │   │   │   ├───fb
│           │   │   │   ├───ff
│           │   │   │   ├───info
│           │   │   │   └───pack
│           │   │   └───refs
│           │   │       ├───heads
│           │   │       ├───remotes
│           │   │       │   └───origin
│           │   │       └───tags
│           │   ├───.github
│           │   │   ├───scripts
│           │   │   └───workflows
│           │   ├───examples
│           │   │   ├───CaptivePortal
│           │   │   ├───ESP_AsyncFSBrowser
│           │   │   │   └───data
│           │   │   ├───regex_patterns
│           │   │   └───simple_server
│           │   └───src
│           └───ESPAsyncTCP
│               ├───.git
│               │   ├───hooks
│               │   ├───info
│               │   ├───logs
│               │   │   └───refs
│               │   │       ├───heads
│               │   │       └───remotes
│               │   │           └───origin
│               │   ├───objects
│               │   │   ├───04
│               │   │   ├───08
│               │   │   ├───0e
│               │   │   ├───11
│               │   │   ├───15
│               │   │   ├───1b
│               │   │   ├───29
│               │   │   ├───2d
│               │   │   ├───35
│               │   │   ├───39
│               │   │   ├───3a
│               │   │   ├───5a
│               │   │   ├───5e
│               │   │   ├───61
│               │   │   ├───63
│               │   │   ├───65
│               │   │   ├───66
│               │   │   ├───6b
│               │   │   ├───6e
│               │   │   ├───71
│               │   │   ├───7a
│               │   │   ├───7b
│               │   │   ├───7c
│               │   │   ├───7e
│               │   │   ├───83
│               │   │   ├───87
│               │   │   ├───8a
│               │   │   ├───97
│               │   │   ├───9b
│               │   │   ├───b3
│               │   │   ├───b5
│               │   │   ├───c3
│               │   │   ├───c8
│               │   │   ├───ca
│               │   │   ├───cb
│               │   │   ├───cd
│               │   │   ├───ce
│               │   │   ├───cf
│               │   │   ├───d2
│               │   │   ├───d8
│               │   │   ├───e6
│               │   │   ├───fd
│               │   │   ├───info
│               │   │   └───pack
│               │   └───refs
│               │       ├───heads
│               │       ├───remotes
│               │       │   └───origin
│               │       └───tags
│               ├───.github
│               │   ├───scripts
│               │   └───workflows
│               ├───examples
│               │   ├───ClientServer
│               │   │   ├───Client
│               │   │   └───Server
│               │   └───SyncClient
│               ├───src
│               └───ssl
├───data
├───include
├───lib
├───src
├───test
└───tools

I don’t know what the python script git_rev.py does but it’s likely the problem.

I’ve created a simple python script and saved it in tools/git_rev.py:

print("Warning: watch out")

Without !python tools\git_rev.py, your platformio.ini file works. With it, I get almost the same error message like you. In fact, the word Warning is from the python script. If I change it in the script, the error message changes as well.

*** [.pio/build/lolin_d32/firmware.elf] Implicit dependency `/Users/me/.platformio/platforms/espressif32/builder/Warning:' not found, needed by target `.pio/build/lolin_d32/firmware.elf'.

That is the strangest thing!

I use that to give me git information for versioning and such within my programs:

import subprocess
import os

if os.name == "nt":
    null = "nul"
else:
    null = "/dev/null"

# Get Git project name (directory name)
try:
    projcmd = "git rev-parse --show-toplevel 2> " + null
    project = subprocess.check_output(projcmd, shell=True).decode().strip()
    project = project.split("/")
    project = project[len(project)-1]
except:
    project = os.path.split(os.getcwd())[1]
    print("Warning: Unable to determine git project name, using '" + project + "' as version.")

# Get 0.0.0 version from latest Git tag
try:
    tagcmd = "git describe --tags --abbrev=0 2> " + null
    version = subprocess.check_output(tagcmd, shell=True).decode().strip()
except:
    print("Warning: Unable to determine git tags, using '0.0.0' as version.")
    version = "0.0.0"

# Get latest commit short from Git
try:
    revcmd = "git log --pretty=format:'%h' -n 1 2> " + null
    commit = subprocess.check_output(revcmd, shell=True).decode().strip()
except:
    print("Warning: Unable to determine git commit, using 'abcdef0' as commit.")
    commit = "'abcdef0'"

# Get branch name from Git
try:
    branchcmd = "git rev-parse --abbrev-ref HEAD 2> " + null
    branch = subprocess.check_output(branchcmd, shell=True).decode().strip()
except:
    print("Warning: Unable to determine git branch, using 'master' as branch.")
    branch = "master"

# Make all available for use in the macros
print("-DPIO_SRC_NAM={0}".format(project))
print("-DPIO_SRC_TAG={0}".format(version))
print("-DPIO_SRC_REV={0}".format(commit))
print("-DPIO_SRC_BRH={0}".format(branch))

It works elsewhere (I use it in nearly every project,) I wonder why it’s not working here. So weird.

1 Like

I had exactly the same problem, I finally found the reason: I added the wrong space。
wrong:
build_flags = DMENABLED = 0
write:
build_flags = DMENABLED=0

10 Likes

Great spot! Saved me!

you saved my day, bad C habbit #define don’t need = and in the ini you need it

    -D NEOPIXEL_LEDS 3
    -D NEOPIXEL_DATA 4

This works

    -D NEOPIXEL_LEDS=3 
    -D NEOPIXEL_DATA=4 

It is amazing how a simple space can be a problem, an easy fix, when you know :slight_smile: . Thank you I had the same problem. It is working fine now

Claudio

Yes, the -D statement behaves slightly differently than a #define within the code.
Especially when it comes to strings.
Then you have to enclose the whole line with ' like so:
'-D HELLO="WORLD"'.
Although this is also stated in the documentation, it can easily be overlooked.