Установка відладчика gdb під windows mingwn і його використання разом з qt

Для використання GDB під Windows, цей відладчик потрібно збирати з вихідних текстів. З невідомих причин розробники не пропонують бінарну збірку під Windows.

Є хороша новина! З недавніх пір збірка GDB істотно спростилася. Схоже, що це заслуга ще Nokia. Передбачається, що MSYS вже встановлено разом з утилітами patch, unzip і файлом msys-bz2-1.dll. Послідовність установки цих утиліт наступна:

3. Після закінчення установки вручну додамо пару корисних утиліт, які не увійшли до складу ядра MSYS, але можуть виявитися затребуваними. Йдеться про утиліти patch і unzip, файли яких можна знайти тут:

Завантажені файли розпаковуємо за допомогою 7-Zip, і содеожімое папок bin з архівів поміщаємо в однойменну папку MSYS

4. При складанні GDB потрібно ще одна бібліотека. викачуємо файл

розпаковуємо його за допомогою 7-Zip, і поміщаємо бібліотечний файл msys-bz2-1.dll з папки bin архіву в однойменну папку MSYS (див. вище).

5. На закінчення необхідно прописати в системі шлях до компілятора. У системну змінну Path дописуємо через крапку з комою

Розглянемо детально порядок дій.

1. Завантажуємо на сайті розробника архів з вихідними кодами Qt Creator

qt-creator-2.6.1-src.zip 26 MB
(Версія, доступна на момент написання статті)

2. Розпаковуємо архів в корінь диска D: \. Перейменовуємо для зручності папку з ісходником D: \ qt-creator-2.6.1-src, наприклад, в D: \ s (аналогічну дію виконується при складанні Qt Creator).

і виправляємо її на

4. Запускаємо MinGW Shell (див. Групу ярликів MinGW в меню Пуск або файл C: \ Qt \ mingw-4.6 \ msys \ 1.0 \ msys.bat) і вводимо команди

cd / d / s / dist / gdb
make -f Makefile.mingw

5. Результатом збірки буде папка D: \ s \ dist \ gdb \ qtcreator-gdb-7.4.1, яка містить дві мети i686-pc-mingw32 і arm-none-linux-gnueabi (нас цікавить перша) і необхідний набір бібліотечних файлів. Перемістимо цю папку в яке-небудь зручне для нас місце, наприклад в C: \ Qt. Тепер в настройках зв'язки інструментів Qt Creator як відладчика слід вказувати файл