что подключаешь в проект tcmalloc и сразу наблюдается такое, что эксепшны перестают ловиться? То есть, в коде стоит try/catch , внутри кидается эксепшн, который должен пойматься, вместо этого в месте эксепшна случается abort() и в стек трейсе libunwind упоминается. Конпелятор clang 10. На ГЦЦ работает. Linux.
какой эксепшен? в tcmalloc new например не кидает эксепшенов
tcmalloc случайно не статически подключается?
Я сталкивался с подобным в старых ОС. Проблема крылась в порядке линковки системных либ, которые тянулись по депендсам. В моем случае лечилось указанием определенного порядка линковки системных либ. В причине тогда не разобрался, старые ядра, старые либы, gcc3... копать было не интересно.
статически, я API егойный дергаю для логов
новёхонькая убунта, но поковыряю
А линковка с libgcc случайно не статическая?
У меня цланг, там нет гцц кроме его libstdc++.so
Там либо libgcc, либо libcompiler-rt. Но в случае с убунтой вероятнее первое
Не нужно статически, он статически не работает. Линкуй динамически
А, погоди. Там можно линковать .so, можно .a, а можно подключать через LD_PRELOAD. Я линкую .so.
Я посмотрю, но как оно должно быть? Явно я ничего из этого не прописываю.
Обсуждают сегодня