Используйте имя функции или адрес памяти при установке точки останова вместо этого или скомпилируйте без оптимизации, если вам нужны номера строк.
(gdb) b main // will put a break point at start of function main
(gdb) r // run
В качестве альтернативы используйте команду start
, которая устанавливает временную точку останова на main ( ) и начинает выполнение.
Используйте n
для перехода к следующей инструкции и si
для перехода к функции / метке.
Чтобы отобразить registers
, вы можете использовать info regs
команда или i r
. В качестве альтернативы используйте макет регистров, что намного лучше. Чтобы получить значение в определенном регистре, используйте print
, например print $rax
.
(gdb) layout regs