Подтвердить что ты не робот

Как я могу повторно запустить программу с помощью gdb до тех пор, пока не возникнет ошибка сегментации?

У моей программы есть проблема с ошибкой сегментации, но она редко возникает (один раз в 20 раз и более) и отлаживает ее в GDB, мне нужно вручную запустить программу до тех пор, пока не произойдет ошибка сегментации (в течение половины дня повторных попыток только один раз, когда это не удается:().

Итак, есть вопросы: есть ли способ сообщить GDB повторно запустить программу до некоторого segfault?

4b9b3361

Ответ 1

Поместите точку останова на выходе вашей программы, которая запускает команду run, и не забывайте set pagination off. Информация о командах настроек доступна в разделе Список команд точки останова в документации gdb. Короче говоря:

set pagination off
break exit
commands
run
end

После строки commands вы увидите, что следующие две строки вводятся как команда для выполнения, когда достигается точка останова.