Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

xtensa toolchain problem? #2

Closed
daef opened this issue Jan 11, 2025 · 6 comments
Closed

xtensa toolchain problem? #2

daef opened this issue Jan 11, 2025 · 6 comments

Comments

@daef
Copy link

daef commented Jan 11, 2025

when i try to build this repo using pio run I get

Compiling .pio/build/waveshare_esp32s3_touch_lcd_128/src/main.cpp.o
*** [.pio/build/waveshare_esp32s3_touch_lcd_128/bootloader.bin] Source `/home/d/.platformio/packages/framework-arduinoespressif32-libs/esp32s3/bin/bootloader_qio_.elf' not found, needed by target `.pio/build/waveshare_esp32s3_touch_lcd_128/bootloader.bin'.
xtensa-esp32s3-elf-g++: error: unrecognized command line option '-std=gnu++2b'; did you mean '-std=gnu++2a'?
*** [.pio/build/waveshare_esp32s3_touch_lcd_128/src/main.cpp.o] Error 1

which might have to do with this. how can i fix this?

also framework-arduinoespressif32 seems to be at version 3.1.1 in the meantime - but the esp32-arduino-libs are not part of the releases anymore - does one want - and if so - how does one update those?

@sivar2311
Copy link

@daef See platformio/platform-espressif32#1225
Long story short: There will be no official Arduino 3.x / ESP-IDF 5.x for PlatformIO.
Solution: https://github.com/pioarduino/platform-espressif32

@daef
Copy link
Author

daef commented Jan 11, 2025

do i then still need framework-arduinoespressif32 and framework-arduinoespressif32-libs in platformio.ini? what about the board definition - does anything else change? (other than platform = espressif32 -> platform = https://....)

@daef
Copy link
Author

daef commented Jan 11, 2025

when i just change the platform i get linker errors...

Linking .pio/build/waveshare_esp32s3_touch_lcd_128/firmware.elf
/home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: /home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/lib/esp32s3/no-rtti/libc.a(libc_a-getentropyr.o):(.literal+0x4): warning: _getentropy is not implemented and will always fail
/home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: /home/d/.platformio/packages/framework-arduinoespressif32-libs/esp32s3/qio_qspi/libesp_system.a(startup.c.obj):(.literal.__esp_system_init_fn_init_components0+0x8): undefined reference to `_Unwind_SetEnableExceptionFdeSorting'
/home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: /home/d/.platformio/packages/framework-arduinoespressif32-libs/esp32s3/qio_qspi/libesp_system.a(startup.c.obj): in function `__esp_system_init_fn_init_components0':
/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/startup.c:438:(.text.__esp_system_init_fn_init_components0+0x1c): undefined reference to `_Unwind_SetEnableExceptionFdeSorting'
/home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: /home/d/.platformio/packages/framework-arduinoespressif32-libs/esp32s3/lib/libnewlib.a(reent_init.c.obj):(.iram1.0.literal+0x4): undefined reference to `_cleanup_r'
/home/d/.platformio/packages/toolchain-xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/13.2.0/../../../../xtensa-esp-elf/bin/ld: /home/d/.platformio/packages/framework-arduinoespressif32-libs/esp32s3/lib/libnewlib.a(newlib_init.c.obj):(.data.s_stub_table+0x98): undefined reference to `_cleanup_r'
collect2: error: ld returned 1 exit status
*** [.pio/build/waveshare_esp32s3_touch_lcd_128/firmware.elf] Error 1

@sivar2311
Copy link

sivar2311 commented Jan 11, 2025

No, everyhing you need is

platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.11/platform-espressif32.zip
framework = arduino
board = ...

This will give you the latest Espressif32 Arduino 3.1.1 based on ESP-IDF 5.3

I don't think this is the right place for discussing.
Please create a github repo with your project and send me a link or invite me as colaborator.

@daef
Copy link
Author

daef commented Jan 11, 2025

thanks, after removing the rest it builds.

sorry for misusing the issue comments - I'll try to seperate my stuff better next time :)

@maxgerhardt
Copy link
Owner

Fixed in b4ac6e6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants