Отладка

GDB: пошаговая отладка

Точки останова, стек вызовов и локальные переменные помогают найти причину сбоя.

Команды и конфиги

gcc -g -O0 app.c -o app
gdb --args ./app arg1
(gdb) break main
(gdb) run
(gdb) bt
(gdb) info locals

На что обратить внимание

Собирайте с -O0 -g, иначе часть переменных будет оптимизирована.

Читайте также

Отладка

strace: что программа делает на самом деле

Трассировка системных вызовов показывает открытые файлы, сетевые вызовы и ошибки доступа.

Отладка

perf: профилирование без перекомпиляции

perf показывает, где программа тратит процессорное время, вплоть до функций ядра.

Отладка

git bisect: ищем коммит, сломавший сборку

Бинарный поиск по истории находит виновный коммит за считанные шаги.