View previous topic :: View next topic |
Author |
Message |
ese002 Apprentice
Joined: 20 Sep 2006 Posts: 155
|
Posted: Sat Jan 04, 2025 3:19 am Post subject: undefined reference to `__cxa_call_terminate@CXXABI_1.3.15' |
|
|
I'm seeing this from ninja from multiple packages linking to multiple libraries. Does anyone know what is going on? None of these errors are from building the library itself but from packages that call the library.
Code: | /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libvte-2.91.so: undefined reference to `__cxa_call_terminate@CXXABI_1.3.15'
/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libQt6Core.so.6.7.3: undefined reference to `__cxa_call_terminate@CXXABI_1.3.15'
/usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib64/libQt5Core.so: undefined reference to `__cxa_call_terminate@CXXABI_1.3.15' |
[Administrator edit: added [code] tags to preserve output layout. -Hu] |
|
Back to top |
|
|
Ionen Developer
Joined: 06 Dec 2018 Posts: 2888
|
Posted: Sat Jan 04, 2025 3:27 am Post subject: |
|
|
This happens when C++ libraries (using libstdc++) that were built with a newer gcc are being used with an older one.
Currently you are seemingly using gcc13 (as shown by the /13/ you have there), so either you used to be using gcc14 or you are using binpkgs that were built with gcc14 (gentoo's official binhost packages are).
Typically users are automatically switched to the newer gcc when they `emerge --depclean` the old gcc and don't run into this much, but otherwise you can use `eselect gcc` or gcc-config to change it to 14 manually.
If really wanted to keep using 13, you'd have to rebuild these libraries with 13. |
|
Back to top |
|
|
ese002 Apprentice
Joined: 20 Sep 2006 Posts: 155
|
Posted: Sat Jan 04, 2025 4:47 pm Post subject: |
|
|
Ionen wrote: | This happens when C++ libraries (using libstdc++) that were built with a newer gcc are being used with an older one.
Currently you are seemingly using gcc13 (as shown by the /13/ you have there), so either you used to be using gcc14 or you are using binpkgs that were built with gcc14 (gentoo's official binhost packages are).
Typically users are automatically switched to the newer gcc when they `emerge --depclean` the old gcc and don't run into this much, but otherwise you can use `eselect gcc` or gcc-config to change it to 14 manually.
If really wanted to keep using 13, you'd have to rebuild these libraries with 13. |
Thanks. Eselecting GCC 14 worked. In circular fashion, this problem was blocking me from running the depclean that was supposed to fix it. |
|
Back to top |
|
|
|