Raspberry Pi and ESP32

Hi,

While installing Platformio on my Raspberry Pi, I ran into problems with the ESP32 toolchain.

The error message referred a missing CXXABI 1.3.9 entry in libstdc++.

It appears that Raspbian 8 (Jessie) is incompatible with the ESP32 environment because the highest level of CXXABI supported is version 1.3.8.

Raspbian 9 (Stretch) appears to be working.

This may be due to Raspbian Jessie supports up to gcc 4.9 while Raspbian Stretch supports gcc 6.3

What exact PIO command did you run and what exact error message did you receive?

pi@RPi3B7:~ $ pio init --board lolin32;pio run -e lolin32
The current working directory /home/pi will be used for the project.

The next files/directories have been created in /home/pi
include - Put project header files here
lib - Put here project specific (private) libraries
src - Put project source files here
platformio.ini - Project Configuration File

Project has been successfully updated! Useful commands:
`pio run` - process/build project from the current directory
`pio run --target upload` or `pio run -t upload` - upload firmware to a target
`pio run --target clean` - clean project (remove compiled files)
`pio run --help` - additional information

Processing lolin32 (platform: espressif32; board: lolin32; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------
PlatformManager: Installing espressif32
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
espressif32 @ 1.6.0 has been successfully installed!
The platform 'espressif32' has been successfully installed!
The rest of packages will be installed automatically depending on your build environment.
PackageManager: Installing toolchain-xtensa32 @ ~2.50200.0
Downloading  [####################################]  100%          
Unpacking  [####################################]  100%          
PackageManager: Installing framework-arduinoespressif32 @ ~2.10001.190111
Downloading  [####################################]  100%          
Unpacking  [####################################]  100%          
PackageManager: Installing tool-esptoolpy @ ~1.20600.0
Downloading  [####################################]  100%
Unpacking  [####################################]  100%
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/lolin32.html
PLATFORM: Espressif 32 > WEMOS LOLIN32
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)
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(chain) COMPATIBILITY(soft)
Collected 26 compatible libraries
Scanning dependencies...
No dependencies
Compiling .pioenvs/lolin32/src/main.cpp.o
xtensa-esp32-elf-g++: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by xtensa-esp32-elf-g++)
Generating partitions .pioenvs/lolin32/partitions.bin
Archiving .pioenvs/lolin32/libFrameworkArduinoVariant.a
Indexing .pioenvs/lolin32/libFrameworkArduinoVariant.a
*** [.pioenvs/lolin32/src/main.cpp.o] Error 1
Compiling .pioenvs/lolin32/FrameworkArduino/Esp.cpp.o
xtensa-esp32-elf-g++: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by xtensa-esp32-elf-g++)
*** [.pioenvs/lolin32/FrameworkArduino/Esp.cpp.o] Error 1
========================================================= [ERROR] Took 228.66 seconds =========================================================

================================================================== [SUMMARY] ==================================================================
Environment uno      	[SKIP]
Environment nodemcuv2	[SKIP]
Environment teensy31 	[SKIP]
Environment lolin32  	[ERROR]
========================================================= [ERROR] Took 228.66 seconds =========================================================
pi@RPi3B7:~ $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian
----- Links removed to allow posting ----
pi@RPi3B7:~ $ dpkg -l | grep libstdc++
ii  libstdc++-4.9-dev:armhf               4.9.2-10+deb8u2                           armhf        GNU Standard C++ Library v3 (development files)
ii  libstdc++6:armhf                      4.9.2-10+deb8u2                           armhf        GNU Standard C++ Library v3
pi@RPi3B7:~ $ strings /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 | grep CXXABI
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_TM_1
CXXABI_ARM_1.3.3
pi@RPi3B7:~ $

Thanks. @ivankravets can you have a look at this?

1 Like

Please file an issue here Issues · platformio/platform-espressif32 · GitHub

We will ping Espressif team.

Done. Opened Issue #154