`-static-libstdc++` with `stacktrace_from_exception` produces duplicate symbol `__cxa_allocate_exception`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Inizia da libs/stacktrace/src/from_exception.cpp, in particolare dall’area intorno alla riga 248 segnalata, e riproduci il fallimento del linker usando -static-libstdc++ e -static-libgcc. Esamina come viene compilato ed esposto tramite Conan il componente stacktrace_from_exception, quindi verifica che la definizione duplicata di __cxa_allocate_exception venga risolta senza compromettere il packaging previsto della libreria del componente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I'm trying to update our project (The XRP ledger) to Boost 1.88 and I'm seeing a linker error on x86 (where stacktrace_from_exception gets enabled by default):
/usr/bin/ld: /usr/bin/../lib/gcc/x86_64-linux-gnu/12/libstdc++.a(eh_alloc.o): in function `__cxa_allocate_exception':
(.text.__cxa_allocate_exception+0x0): multiple definition of `__cxa_allocate_exception'; /root/.conan2/p/b/boost4d02c12b1f707/p/lib/libboost_stacktrace_from_exception.a(from_exception.o):/root/.conan2/p/boost9ad4e6f6d8220/s/src/libs/stacktrace/build/../src/from_exception.cpp:248: first defined here
This only happens with -static-libstdc++ -static-libgcc options.
There seems to be no easy way to disable the component through conan. I tried something like
def configure(self):
self.options["boost"].extra_b2_flags = "boost.stacktrace.from_exception=off"
which results in
boost/1.88.0: WARN: Boost component 'stacktrace_from_exception' is missing libraries. Try building boost with '-o boost:without_stacktrace_from_exception'. (Option is not guaranteed to exist)
ERROR: boost/1.88.0: Error in package_info() method, line 2026
raise ConanException(f"These libraries were expected to be built, but were not built: {non_built}")
ConanException: These libraries were expected to be built, but were not built: {'boost_stacktrace_from_exception'}
Here is the real project breaking: https://github.com/XRPLF/rippled/actions/runs/16486148700/job/46611443287?pr=5570
Any help and suggestions are very welcome 🙏
- Lingua principale
- C++
- Stelle
- 497
- Fork
- 86
- Merge medio
- 8g 20h
- PR unite (30g)
- 3
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di boostorg/stacktrace
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
boostorg/stacktrace#233 ·
-
Ошибка в Inscape Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
boostorg/stacktrace#211 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
boostorg/stacktrace#197 · 3 commenti ·
-
enhancement help wanted
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
boostorg/stacktrace#176 · 1 commento ·
-
enhancement help wanted
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
boostorg/stacktrace#163 · 7 commenti ·
Tutte le issue di boostorg/stacktrace
Issue simili
-
ai_reviewed
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
ydb-platform/ydb#53869 · 3 commenti ·
-
bug cert blocker needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
project-chip/connectedhomeip#74373 ·
-
[request] tracy/0.14.1 Apertaupstream update
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
conan-io/conan-center-index#31035 ·
-
Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
vllm-project/vllm-ascend#17329 ·