Компиляция MCCW GCC и отладка GDB

Я думаю, как GDB работает на Windows под Mingw? При компиляции с mingw C в.exe, он создает PE-файл, верно (так что Windows может его запустить).

Но тогда вы хотите отладить.exe с помощью GDB. Этот GDB знает, чтобы отладить PE-файл? Как? Читает ли отладочную информацию из PE-файла? Это отладочная информация Гнома или что-то еще?

1 ответ

Решение

Как вы говорите, для естественного запуска в Windows mingw, очевидно, создает исполняемые файлы PE.

Бежать objdump -s your.exe чтобы увидеть разделы, встроенные в PE-файл, который производит mingw. (.debug_*). Если вы соберете тот же исполняемый файл, скажем, в Linux и сделаете то же самое, вы увидите, что имена разделов совпадают. Добавление в -s Аргумент objdump показывает содержимое раздела, и вы увидите, что формат выглядит одинаково, поэтому mingw должен использовать DWARF.

Другие вопросы по тегам