В поддержку Qt

статьи в помощь разработчику

   

Главная

Статьи:

Установка MinGW

Установка Qt Creator

Проблемы Qt 4.8.3

Распараллеливание компиляции

Сборка отладчика GDB

Установка библиотеки Qwt

Установка QwtPolar

Установка QwtPplot3D

Конфигурация сборки по умолчанию

Сборка Qt Creator из исходников

Пример использования QwtPlot

Масштабирование QwtPlot в стиле TChart

Синхронное масштабирование

Пример использования QwtPolar

Пример использования QwtPlot3D

Редактирование QSplitter

Сборка в Ubuntu для Windows

Установка пакетов без интернета

Установка драйвера NVIDIA

 

Главная > Сборка отладчика GDB (очень старая редакция)

 

Сборка отладчика GDB

Старая редакция статьи, новую можно найти здесь.

Отладчик GDB является важным инструментом среды разработки приложений Qt. Без него Qt Creator, например, теряет большую часть своей функциональности (остается, разве что, подсветка синтаксиса в редакторе и контекстная справка). Вплоть до версии Qt Creator 2.4.1 отладчик GDB устанавливался вместе с Qt Creator, равно как и компилятор MinGW. Начиная с версии Qt Creator 2.5.0, отлачик GDB необходимо собирать самостоятельно. Данная статья призвана оказать помощь в решении этой проблемы. При ее подготовке использовался материал с ресурса Wiki от Nokia.

Далее для определенности будем полагать, что MinGW вместе с со своей частью MSYS Basic System установлен в папку C:\Qt\mingw. Отладчик будем собирать в папке C:\Qt\pythongdb, промежуточные компоненты – в папке C:\Qt\build, а в качестве каталога для временных файлов используем D:\TEMP.

Рассмотрим подробно порядок действий.

1) Загрузка python

Загружаем доступный для скачивания архив python.zip, распаковываем его содержимое в папку C:\Qt\build.

2) Сборка expat

Загружаем с ресурса архив с исходным кодом (на момент написания статьи это expat-2.1.0.tar.gz из папки 2.1.0/), распаковываем его содержимое в папку D:\TEMP. Запускаем MinGW Shell (см. группу ярлыков MinGW в меню Пуск или файл C:\Qt\mingw\msys\1.0\msys.bat) и поочередно вводим команды

cd /d/TEMP/expat-2.1.0
configure --prefix=/c/Qt/build/expat --enable-static
make
make install

3) Сборка libiconv

Загружаем с ресурса архив с исходным кодом (на момент написания статьи это libiconv-1.14.tar.gz), распаковываем его содержимое в папку D:\TEMP. Запускаем MinGW Shell и в открывшемся консольном окне поочередно вводим команды, аналогичные п. 2)

cd /d/TEMP/libiconv-1.14
configure --prefix=/c/Qt/build/libiconv --enable-static
make
make install

4) Сборка GDB

Загружаем с ресурса свежую версию архива с исходным кодом (на момент написания статьи это gdb-7.4.tar.bz2), распаковываем его содержимое в папку D:\TEMP. Запускаем MinGW Shell и поочередно вводим команды

cd /d/TEMP/gdb-7.4
configure --target i686-pc-mingw32 --disable-nls --with-libiconv-prefix=/c/Qt/build/libiconv --with-expat --with-libexpat-prefix=/c/Qt/build/expat --with-python
make LDFLAGS="-L/c/Qt/build/python/libs -lpthread -lpython27" CFLAGS="-I/c/Qt/build/python/include"

Ключи в команде configure и параметры в команде make следует вводить без перевода строки. По окончании сборки должен появиться файл D:\TEMP\gdb-7.4\gdb\gdb.exe.

5) "Установка" отладчика

Собственно, все необходимое для работы отладчика уже собрано. Дальнейшие действия можно интерпретировать как его "установку", которая осуществляется вручную.

1. Создаем папку назначения C:\Qt\pythongdb.

2. Копируем в нее файл D:\TEMP\gdb-7.4\gdb\gdb.exe и переименовываем его в gdb-i686-pc-mingw32.exe.

3. Копируем туда же папку

C:\Qt\build\python\lib (вместе со всем содержимым)

и файлы

C:\Qt\build\expat\bin\libexpat-1.dll
C:\Qt\build\libiconv\bin\libiconv-2.dll
C:\Qt\build\python\python27.dll

Для того чтобы использовать отладчик в Qt Creator, необходимо указать его в связке инструментов так, как описано в статье.

При сборке GDB в команде configure ключ --target указывает цель сборки i686-pc-mingw32 – работа под управлением Windows. Обычно этого вполне достаточно. Если есть желание, можно собрать и две другие цели arm-none-linux-gnueabi и arm-none-symbianelf, повторив действия, описанные в п. 4), и изменив соответствующим образом ключ --target в команде configure. Перед сборкой каждой новой цели необходимо выполнить команду очистки make distclean в папке D:\TEMP\gdb-7.4, или проще удалить эту папку и заново распаковать содержимое архива gdb-7.4.tar.bz2 в папку D:\TEMP.

6) Очистка

Теперь можно удалить из каталога для временных файлов следующие папки

D:\TEMP\expat-2.1.0
D:\TEMP\libiconv-1.14
D:\TEMP\gdb-7.4

Промежуточные компоненты из папки C:\Qt\build, на Ваше усмотрение, можете удалить или сохранить их для использования при последующих сборках, не забывая при этом отслеживать изменения версий этих компонентов.