PlatformIO ESP32 mDash - compile errors

#1

New to mDash. Trying to compile the Shadow example in PlatformIO with NodeMCU 32-S ESP32.

Semi-experienced with PlatformIO and Arduino projects. Finding PlatformIO much nicer environment.

Anyway-- here’s the errors I’m getting trying to compile the Shadow example:

Executing task in folder ESP32_mDash: platformio.exe run <

Processing nodemcu-32s (platform: espressif32; board: nodemcu-32s; framework: arduino)

Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/nodemcu-32s.html
PLATFORM: Espressif 32 1.9.0 > NodeMCU-32S
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: toolchain-xtensa32 2.50200.80 (5.2.0), framework-arduinoespressif32 2.10002.190628 (1.0.2), tool-esptoolpy 1.20600.0 (2.6.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 30 compatible libraries
Scanning dependencies…
Dependency Graph
|-- 1.0.40
Linking .pio\build\nodemcu-32s\firmware.elf
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal._ZL17reportShadowStatev+0xc): undefined reference to mDashGetFreeRam' .pio\build\nodemcu-32s\src\main.cpp.o:(.literal._ZL17reportShadowStatev+0x10): undefined reference tomDashShadowUpdate’
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal.ZL13onShadowDeltaPKcS0+0xc): undefined reference to mDashGetNum' .pio\build\nodemcu-32s\src\main.cpp.o:(.literal._ZL13onShadowDeltaPKcS0_+0x10): undefined reference tomDashGetBool’
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z4loopv+0x14): undefined reference to mDashGetDeviceID' .pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z4loopv+0x18): undefined reference tomDashPublish’
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z5setupv+0x24): undefined reference to mDashInitWithWifi' .pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z5setupv+0x28): undefined reference tomDashShadowDeltaSubscribe’
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z5setupv+0x2c): undefined reference to mDashOn' .pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z5setupv+0x30): undefined reference tomDashGetState’
.pio\build\nodemcu-32s\src\main.cpp.o:(.literal._Z5setupv+0x34): undefined reference to mDashCLI' .pio\build\nodemcu-32s\src\main.cpp.o: In functionreportShadowState()’:
main.cpp:(.text._ZL17reportShadowStatev+0xf): undefined reference to mDashGetFreeRam' main.cpp:(.text._ZL17reportShadowStatev+0x1e): undefined reference tomDashShadowUpdate’
.pio\build\nodemcu-32s\src\main.cpp.o: In function onShadowDelta(char const*, char const*)': main.cpp:(.text._ZL13onShadowDeltaPKcS0_+0x14): undefined reference tomDashGetNum’
main.cpp:(.text.ZL13onShadowDeltaPKcS0+0x34): undefined reference to mDashGetBool' .pio\build\nodemcu-32s\src\main.cpp.o: In functionloop()’:
main.cpp:(.text._Z4loopv+0x24): undefined reference to mDashGetDeviceID' main.cpp:(.text._Z4loopv+0x5c): undefined reference tomDashGetFreeRam’
main.cpp:(.text._Z4loopv+0x6e): undefined reference to mDashPublish' .pio\build\nodemcu-32s\src\main.cpp.o: In functionsetup()’:
main.cpp:(.text._Z5setupv+0x2f): undefined reference to mDashInitWithWifi' main.cpp:(.text._Z5setupv+0x38): undefined reference tomDashShadowDeltaSubscribe’
main.cpp:(.text._Z5setupv+0x43): undefined reference to mDashOn' main.cpp:(.text._Z5setupv+0x49): undefined reference tomDashGetState’
main.cpp:(.text._Z5setupv+0x64): undefined reference to `mDashCLI’
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\nodemcu-32s\firmware.elf] Error 1
===================================================================== [FAILED] Took 4.90 seconds =====================================================================
The terminal process terminated with exit code: 1

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

#2

I don’t know anything about PaltformIO, but it looks like esp32/libmDash.a is not linked in.