LINUX.ORG.RU

Отладка / Поиск причины падения бинарника

 , , ,


1

2

Посоветуйте толковую утилиту для поиска багов в бинарнике, которые приводят к его падению или зависанию. Бинарник собран в QtCreator, работает на серваке под управлением Ubuntu 14.04.

Предположим, работает себе этот бинарник, но в один момент падает один из потоков по непонятной причине. Есть ли такой инструмент, который бы мог показать в каком месте было падение, показать колл-стек, переменные дамп или любую другую полезную информацию?

Или было бы тоже неплохо настроить удаленную отладку через QtCreator. Если кто настраивал, поделитесь инфой как это сделать или ссылку на толковый мануал. Пока после нескольких безуспешных попыток в этом направлении, оставил эту затею.

addr2line и valgrind можно еще попробовать

SZT ★★★★★
()

Можно прямо на серваке запустить программу из под консольного gdb, оно тебе все потоки покажет + точное место падения программы. Нет пока необходимости в удаленной отладки, просто запустить бинарь с отладочной инфой на сервере и увидишь какая конкретно функция фейлит.

I-Love-Microsoft ★★★★★
()

Включи запись core-файлов - если упадет, можно будет в gdb посмотреть, где упало

annulen ★★★★★
()

Спасибо, начал снова пробовать дебажить с gdb. Но потом пришла одна идея и сделал тестовый скрипт, который работает на локалхосте, где установлен QtCreator и запущен сервер, т.е. могу дебажить теперь из QtCreator локально. Скрипт бомбит запросами сервак, запущенный из под QtCreator в режиме отладки. В итоге добился воспроизведения бага. Сервер (бинарник) не падает, но перестает отвечать на запросы, но и места падения не могу найти. При попытке поставить брекпоинт или приостановить выполнение бинарника QtCreator почему-то завершает работу бинарника с сообщением: «Executable Failed. ptrace: No such process» и потом «Cannot continue debugged process: ptrace: No such process.» Ничего толкового по этим сообщениям не нашел. Как найти место падения?

Random2
() автор топика
Ответ на: комментарий от Random2

QtCreactor нахрен не нужен, бинарник собирается с отладочной информацией, и запускается под gdb, любые вылеты сразу будут в консоли gdb, он перехватит, а желание отлаживать через QtCreactor это какое то виндовс дрочерство, вы форумом ошиблись

anonymous
()
Ответ на: комментарий от anonymous

О, илитка, не воспринимающая ничто, окромя консоли, вернулась! Сегодня у тебя мало уроков?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.