URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5663
[ Назад ]

Исходное сообщение
"Проблема с отладкой во FreeBSD5.4"

Отправлено Vital , 24-Авг-06 17:51 
Возникла проблема следующего рода.
Имеется многопоточная программа, при вышибании ее из памяти в отладчике gdb не видно в каком месте произошел сбой, всегда пишет одно и тоже

#0  0x2830731b in pthread_testcancel () from /usr/lib/libpthread.so.1

ОС FreeBSD5.4. Под FreeBSD 4.10 такого не было и я всегда видел место сбоя.
В чем проблема? как посмотреть где произошел сбой?

Инфо о системе:
% uname -a
FreeBSD august4u.ru 5.4-RELEASE FreeBSD 5.4-RELEASE #0: Sun May  8 10:21:06 UTC 2005     root@harlow.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386
% gcc -v
Using built-in specs.
Configured with: FreeBSD/i386 system compiler
Thread model: posix
gcc version 3.4.2 [FreeBSD] 20040728
%

Компилирую естественно с ключом -g


Содержание

Сообщения в этом обсуждении
"Проблема с отладкой во FreeBSD5.4"
Отправлено DeadMustdie , 25-Авг-06 22:21 
info threads
потом попробовать попереключаться между потоками командой
thread X
если не найдется, значит, стек портится - хотя вряд ли.
Но если дело в порче стека, то поможет либо valgrind (но не под фрей, разумеется),
либо тривиальная тупая трассировка выполнения в файлик.

"Проблема с отладкой во FreeBSD5.4"
Отправлено masted , 26-Авг-06 09:00 
>Но если дело в порче стека, то поможет либо valgrind (но не
>под фрей, разумеется),

Под фрибсд valgrind отлично работает :) /usr/ports/devel/valgrind


"Проблема с отладкой во FreeBSD5.4"
Отправлено kir , 26-Авг-06 14:36 
gdb>thread apply al bt full
кажись так, мож больше инфы даст