Простой Как запустить инструмент командной строки C ++ на OS X внутри отладчика - PullRequest
0 голосов
/ 07 января 2012

У меня есть часть программного обеспечения Unix, написанного на C ++, который можно собрать на OSX с помощью обычных шагов ./configure; make; make install. Это инструмент командной строки, так что никакой необычный графический интерфейс или что-то в этом роде.

Чтобы лучше понять код, я хотел бы запустить инструмент в отладчике. Я бы хотел, чтобы отладчик остановился в начале метода main, а затем пошагово прошел бы по вызовам функций. Так что здесь не нужно никаких причудливых требований.

Моя проблема в том, что у меня достаточно опыта в разработке для Windows, но я новичок в этом деле в Unix / OSX, и мне сложно собрать все необходимые флаги компиляции, инструменты, ... Я думаю, просто добавьте некоторые флаги к ./configure и затем сможете каким-то образом выполнить полученный исполняемый файл, используя gdb. Но детали несколько сложны и их трудно понять. Кто-нибудь знает хороший ресурс для начала? Как "Отладка инструмента командной строки C с использованием GDB для чайников"? ; -)

1 Ответ

3 голосов
/ 07 января 2012

Сначала вам нужно собрать с отладочной информацией.Вы можете использовать команду configure следующим образом:

./configure CFLAGS=-g CPPFLAGS=-g

(Запустите ./configure --help для получения более подробной справки для вашего проекта.)

Тогда это всего лишь вопрос запуска инструмента в gdb:

gdb ./mytool

Если вам нужно передать аргументы в инструмент, используйте вместо этого:

gdb --args ./mytool arg1 arg2 arg3 ...

Однажды в GDB установите точку останова, где вы хотите остановить и проверить выполнение:

break main
break sourcefile.cpp:123

Затем начните выполнение:

run
...