Я не очень разбираюсь в Unix / Linux, я использую Rhat Linux с оболочками sh, tcsh.
Я пытаюсь отлаживать жизненный цикл объекта класса, ломая его по умолчанию, копируя c-tors, d-tor и on operator =; Операции перемещения не определены ни компилятором, ни мной. Я ломаю эти функции и печатаю несколько строк, а также печатаю backtrace
br /project/src/some_file.c:408
commands
silent
printf "<%p> D E F A U L T c-tor bt:\n", this
bt
cont
end
Дело в том, что объектов этого класса много, поэтому вывод много, и ничто не помогает мне отключить вывод на терминал, поэтому я хочу видеть вывод gdb только в файле, а не в оболочке , Можно ли добиться с помощью sh или tcsh? - Я не могу реально воздействовать на окружающую среду и использовать какой-либо другой отладчик или оболочку. Причина, по которой я хочу отключить любой вывод из gdb и процесса, отлаживаемого в оболочку, заключается в том, что я считаю, что это замедляет работу gdb и выполнение отлаженного процесса, что нарушает поведение отлаженного приложения.
Использование GDB 8.1. Я попытался протоколировать параметры GDB, перенаправив вывод на
run > somefile
и я попытался запустить GDB, как это
gdb -p 1000 -x breakpoint.txt | tee somefile.txt
Большое спасибо!