-
-
Notifications
You must be signed in to change notification settings - Fork 648
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
Linker problem with typeinfo for fs::FileImpl in version 5.3.0 & arduino core 2.0.6 #987
Comments
Example Sketch? There are code changes in Arduino for this part. You probably have to adopt your code. |
I just updated to 5.3 and get this error too on code that previously compiled ok. Googling for solutions I found mention of RTTI. Possibly related espressif/arduino-esp32#7585 |
@alex-code The toolchains (compiler) does not support |
Been working for me before 5.3 This compiles on 5.2 ; Condensed
platform = [email protected]
build_flags =
-std=gnu++17
build_unflags =
-std=gnu++11
-fno-rtti This fails on 5.3 ; Condensed
platform = [email protected]
build_flags =
-std=gnu++17
build_unflags =
-std=gnu++11
-fno-rtti
|
Exactly, toolchains changed from 5.2.0 to 5.3.0 from patch3 to patch5. |
Thanks @Jason2866 for clarifying. Indeed seems like the issue is caused by updated toolchains which is out of our control. Anyone who's experiencing the same issue please update your project configuration as described above. |
This is not resolved, and is indeed a serious problem! Just because your library doesn't use RTTI, doesn't mean there aren't plenty of us with code that DOES reliably and with necessity use RTTI. |
@LK-Simon At the end the issue was something different ;-). Currently not in any released core. Fix will be included in core 3.0.0 and the fix is backported in bug fix core 2.0.15. Whenever both core will be released. As long this is not happened you have to do the change locally. |
Hi @Jason2866, how do I get Platformio to use the fixed version of the core? :) This has been driving me nuts because my Event Engine absolutely requires RTTI, and I have other issues that make using an older version of the ESP lib untenable. |
@LK-Simon This should work:
|
You, sir, are a life-saver! |
Exactly run into the same issue.... it works now, great @Jason2866 |
This is an error on their part. I've overridden the build options to use -frtti everywhere. It works. Their compiler does not find this single typeinfo. This is the only one. Just This looks to be a compiler issue. |
@mathemaphysics you have to add this change in your framework https://github.com/espressif/arduino-esp32/pull/8768/files |
All files are compiling ok, but linker returns error as below
.platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: build/local/esp-idf/framework-arduinoespressif32/libframework-arduinoespressif32.a(vfs_api.o):(.rodata._ZTI11VFSFileImpl[typeinfo for VFSFileImpl]+0x8): undefined reference to
typeinfo for fs::FileImpl'`On Version 5.2.0 & Arduino core 2.0.5 code is compiling ok
The text was updated successfully, but these errors were encountered: