SOLVED: Errors compiling with CLI 2.11 with arduinoespressif 2.3

After updatating to the latest version of PlatformIO 2.11 with espressif 2.3 I get a strange error when compiling

collect2: error: ld returned 1 exit status
scons: *** [.pioenvs/emonesp/firmware.elf] Error 1

This project compiled fine with the previous framework version. Just wondered if anyone else has had this issue? The update us tagged as stable, therefore it’s probably worth trying to track down the bug.

Full output:

pioenvs/emonesp/libESP8266WiFi.a(ESP8266WiFiGeneric.o):(.text._ZN23ESP8266WiFiGenericClass14_eventCallbackEPv+0x4): undefined reference to `std::__detail::_List_node_base::_M_unhook()'
.pioenvs/emonesp/libESP8266WiFi.a(ESP8266WiFiGeneric.o): In function `ESP8266WiFiGenericClass::_eventCallback(void*)':
ESP8266WiFiGeneric.cpp:(.text._ZN23ESP8266WiFiGenericClass14_eventCallbackEPv+0x64): undefined reference to `std::__detail::_List_node_base::_M_unhook()'
.pioenvs/emonesp/libESP8266WiFi.a(ESP8266WiFiGeneric.o):(.text._ZNSt4listISt10shared_ptrI22WiFiEventHandlerOpaqueESaIS2_EE9push_backERKS2_[std::list<std::shared_ptr<WiFiEventHandlerOpaque>, std::allocator<std::shared_ptr<W
iFiEventHandlerOpaque> > >::push_back(std::shared_ptr<WiFiEventHandlerOpaque> const&)]+0x0): undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'
.pioenvs/emonesp/libESP8266WiFi.a(ESP8266WiFiGeneric.o): In function `std::list<std::shared_ptr<WiFiEventHandlerOpaque>, std::allocator<std::shared_ptr<WiFiEventHandlerOpaque> > >::push_back(std::shared_ptr<WiFiEventHandle
rOpaque> const&)':
ESP8266WiFiGeneric.cpp:(.text._ZNSt4listISt10shared_ptrI22WiFiEventHandlerOpaqueESaIS2_EE9push_backERKS2_[std::list<std::shared_ptr<WiFiEventHandlerOpaque>, std::allocator<std::shared_ptr<WiFiEventHandlerOpaque> > >::push_
back(std::shared_ptr<WiFiEventHandlerOpaque> const&)]+0x33): undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'
collect2: error: ld returned 1 exit status
scons: *** [.pioenvs/emonesp/firmware.elf] Error 1

The same project compiles fine using Arduino IDE with espressif 2.3

Hi @glynhudson!
I’ve just compiled your project without any error. Are you sure your framework-arduinoespressif package has 2.3.0 version? Could you paste here full build log?

Just deleted the .pioenvs folder and recompiled and all is well :smiley:

Very sorry to bother you, keep up the good work. Love Pio :thumbsup:

1 Like