Начало работы

Руководство "Начало работы с Qt Creator"

Введение
Запуск среды разработки
Общая информация
Создание нового проекта
Редактирование исходного кода
Сборка (компиляция) проекта
Настройка конфигурации целевой системы
Требования к целевой системе
Создание нового профиля конфигурации
Добавление профиля в конфигурацию Комплекта
Запуск проекта
Отладка проекта
Изменение параметров сборки проекта
Вопросы

Введение

Цель данного руководства - помочь разработчикам приложений для ЗОСРВ "Нейтрино" в освоении графической среды разработки Qt Creator (далее - Среда разработки), а также предоставить информацию о некоторых функциях и возможностях, присутствующих только в Qt Creator редакции КПДА. Рассматриваются только базовые приёмы работы (создание нового проекта, подключение к целевой системе, пошаговая отладка).

Официальная общедоступная документация на Qt Creator: doc.qt.io/qtcreator

Запуск среды разработки

Запуск Среды разработки осуществляется с помощью файла run_qtcreator.sh (Linux) или run_qtcreator.bat (Windows), находящегося в каталоге установки Комплекта разработчика для ЗОСРВ "Нейтрино" (далее - КР).

Общая информация

Создание нового проекта

Для знакомства со Средой разработки Вы можете создать новый проект на основе одного из существующих шаблонов (templates). Для создания проекта на основе шаблона:

  1. Новый проект: нажмите кнопку "Создать" ("New") на начальном экране или выберите пункт меню "File -> New File or Project..." ("Файл -> Создать файл или проект..."); также может быть использована комбинация клавиш Сtrl+N.

    qtcreator_mainwindow.png
    Рисунок 2. Начальный экран

  2. Выбор шаблона: в разделе "Проекты" ("Projects") выберите раздел "Примеры для ЗОСРВ Нейтрино" ("KPDA Examples"). Далее выберите один из предлагаемых шаблонов и нажмите кнопку "Выбрать..." ("Choose...").

    qtcreator_kpda_templates.png
    Рисунок 3. Выбор шаблона

  3. Выбор имени проекта: задайте имя проекта (напр. "MyProject") или оставьте предлагаемое по умолчанию ("untitled").

    qtcreator_project_name.png
    Рисунок 4. Выбор имени проекта

  4. Выбор сборочной системы: выберите любую сборочную систему из списка предложенных.

    qtcreator_buildsystem.png
    Рисунок 5. Выбор сборочной системы

  5. Выбор Комплекта: выберите подходящий Комплект из списка доступных (он должен соответствовать архитектуре той целевой системы, для которой Вы предполагаете выполнить компиляцию и последующий запуск проекта).

    qtcreator_activekits.png
    Рисунок 6. Выбор Комплекта


    Note: Среда Qt Creator позволяет настроить проект на использование нескольких Комплектов (например, для последующего быстрого переключения между платформами при выполнении работ по переносу ПО с одной платформы на другую). На этапе знакомства со Средой разработки рекомендуем выбрать только один пункт из предлагаемого списка.

  6. Итог (Summary): нажмите кнопку "Завершить" ("Finish"). Настройку подпроектов и системы контроля версий в данный момент выполнять не требуется.

    qtcreator_newproject_summary.png
    Рисунок 7. Итоговая конфигурация проекта

В том случае, если новый проект создан успешно, в Редакторе будет автоматически открыт основной файл его исходного кода.

qtcreator_project_src.png
Рисунок 8. Редактор исходного кода

Редактирование исходного кода

Некоторые комбинации клавиш, используемые при работе с исходным кодом:

Выбор инструмента навигации по исходному коду осуществляется в левом верхнем углу главного окна Среды разработки:

qtcreator_srcnavtools.png
Рисунок 9. Выбор инструмента для навигации по исходному коду

Основные инструменты навигации:


Note: Для быстрого вызова инструментов, в т.ч. перечисленных выше, могут быть назначены горячие клавиши; см. раздел "Среда -> Клавиатура" ("Environment -> Keyboard") меню "Параметры".

Также может быть полезен инструмент быстрого поиска "Найти..." ("Locate"), доступный через меню "Инструменты" ("Tools") или комбинацию клавиш Ctrl+K. Он позволяет осуществлять быстрый поиск по имени файла, объекта, класса и т.д. (как входящих в состав проекта, так и общесистемных).

Сборка (компиляция) проекта

Для выполнения сборки проекта с параметрами по умолчанию используйте команду "Build" (комбинация клавиш Ctrl+B или кнопка "Build" в левом нижнем углу главного окна Среды разработки).

qtcreator_buildproject.png
Рисунок 10. Сборка проекта

Информация о процессе сборки проекта (в т.ч. ошибки и предупреждения компилятора) доступны через следующие инструменты просмотра:

Для повторной сборки проекта аналогично может быть использована команда "Build" (инкрементальная сборка), а также команда "Rebuild" (полная пересборка проекта с предварительной очисткой; см. пункт меню "Сборка" ("Build") или меню свойств проекта, доступное через нажатие правой кнопки на имени проекта).

Настройка конфигурации целевой системы

Для того, чтобы выполнить запуск получившегося в результате сборки проекта приложения на целевой системе непосредственно из Среды разработки, необходимо предварительно создать профиль конфигурации целевой системы. Конфигурация целевой системы создаётся один раз, в дальнейшем при необходимости в неё могут быть внесены изменения (например, при смене имени пользователя, IP-адреса целевой системы, ключей аутентификации и т.д.).


Note: Для выполнения удалённого запуска и отладки ПО в общем случае требуется использование учётной запись суперпользователя ("root"). Для выполнения только удалённого запуска ПО возможно использование произвольной учётной записи.


Caution: Изначально в состав конфигурации Среды разработки включён профиль "(unconfigured)", представляющий собой "заглушку" (т.е. в нём отсутствует какая-либо информация о целевой системе). Единственное назначение данного профиля - обеспечение визуальной целостности Комплектов (предотвращает появление предупреждения "No device set" / "Устройство не настроено"). В будущем данный профиль может быть исключён из состава стандартной конфигурации Среды разработки.

Требования к целевой системе

Поскольку для взаимодействия с целевой системой Qt Creator использует протокол SSH, целевая система должна быть предварительно настроена соответствующим образом:

Перед созданием нового профиля конфигурации убедитесь, что


Note: В случае возникновения проблем с подключением к целевой системе целесообразно проверить, возможно ли подключение в режиме командной строки. Примеры команды подключения для различных инструментальных систем:
  • Linux: $ ssh -oPubkeyAcceptedKeyTypes=+ssh-rsa -oHostkeyAlgorithms=+ssh-rsa -oUser=<имя_пользователя> -oPort=<порт_SSH> <имя_или_IP_адрес_целевой_системы>
  • Windows: C:\>%KPDA_HOST%/usr/bin/ssh.exe -oPubkeyAcceptedKeyTypes=+ssh-rsa -oHostkeyAlgorithms=+ssh-rsa -oUser=<имя_пользователя> -oPort=<порт_SSH> <имя_или_IP_адрес_целевой_системы>
Если служба sshd запущена на стандартном порту (22), то параметр -oPort=<порт_SSH> можно не указывать. При необходимости также можно использовать дополнительный параметр -v для вывода более подробной диагностической информации.

Создание нового профиля конфигурации

Для создания нового профиля конфигурации:

Добавление профиля в конфигурацию Комплекта

Заключительным шагом является добавление профиля в конфигурацию Комплекта, который используется при сборке данного проекта: В результате для запуска и отладки всех проектов, использующих данный Комплект, будет по умолчанию использоваться выбранное целевое устройство.

Запуск проекта

Запуск приложения осуществляется с помощью вызова команды "Run" (комбинация клавиш Ctrl+R или кнопка "Запустить"/"Run" в левом нижнем углу главного окна Среды разработки).

qtcreator_runapp.png
Рисунок 23. Запуск приложения

Консольный вывод приложения доступен через инструмент "Вывод приложения" ("Application Output"; комбинация клавиш Alt+3 ). Для каждого запущенного экземпляра приложения в данном инструменте открывается отдельная закладка.

Остановить запущенное ранее приложение можно с помощью кнопки "Остановить запущенную программу" ("Stop running program"), расположенной в верхнем меню этого же инструмента.

qtcreator_runapp_stop.png
Рисунок 24. Консольный вывод приложения и кнопка завершения

Отладка проекта

Запуск приложения в режиме отладки осуществляется с помощью вызова команды "Debug" (варианты из меню "Отладка" / "Debug" или кнопка "Start debugging of startup project" / "Начать отладку" в левом нижнем углу главного окна Среды разработки).

Note: Англоязычное описание кнопки запуска отладки ("Start debugging of startup project") является стандартным для Qt Creator (как минимум, по состоянию на момент выхода версии 6.0.2). Несмотря на то, что оно имеет некоторую неоднозначность (в первую очередь касающуюся термина "startup project"), данное описание в Qt Creator редакции КПДА в настоящий момент оставлено без изменения, поскольку оно также встречается в общедоступной англоязычной документации. Русскоязычный перевод при этом скорректирован ("Начать отладку").

qtcreator_debugapp.png
Рисунок 25. Запуск проекта в режиме отладки

Среда разработки Qt Creator по умолчанию не устанавливает точку останова (breakpoint) в начале функции main(). Варианты:

Управление процессом отладки может осуществляться либо с помощью элементов управления (панели кнопок) инструмента "Отладчик" ("Debugger"), а также с помощью горячих клавиш (см. ниже):

qtcreator_debugctl.png
Рисунок 27. Управление процессом отладки

Схема распределения клавиш, отвечающих за выполнение типовых операций при отладке (отличается от принятой, например, в среде разработки QNX Momentics IDE). Основные клавиши по умолчанию:

Клавиша в Qt Creator Назначение Аналог в Eclipse/QNX Momentics IDE
F5 Запуск отладки F11
F10 Запуск отладки с остановкой в main() F11 (по умолчанию)
F5 (после начала отладки) Приостановка отладки -
F5 (конфликт с "Приостановка отладки") Продолжение (до следующей точки останова) F8
F9 Установить/убрать точку останова Ctrl+Shift+B
F10 (после начала отладки) Шаг (режим "Step over") F6
F11 Шаг (режим "Step into") F5
Shift+F11 Шаг (режим "Step out") F7 ("Step Return")
Ctrl+F10 (не работает) Шаг (режим "Run to line") Ctrl+R
Shift+F5 Завершить отладку Ctrl+F2


Note: Переопределить клавиши можно в разделе "Среда -> Клавиатура" ("Environment -> Keyboard") меню "Параметры"; там же при необходимости возможно выполнить импорт/экспорт модифицированной конфигурации.

Остановить ранее запущенное в режиме отладки приложение можно с помощью кнопки "Завершить отладку" ("Stop Debugger"):

qtcreator_stopdbg.png
Рисунок 28. Завершение отладки

Полный журнал процесса отладки (в т.ч. низкоуровневое взаимодействие Среды разработки с отладчиком) доступен через инструмент "Журнал отладки" ("Debugger Log") в меню "Вид -> Обзоры" ("View -> Views").

qtcreator_debug_views.png
Рисунок 29. Инструменты (т.н. "обзоры") отладчика

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

Параметры сборки проекта можно условно разделить на две группы:

Способ изменения параметров сборочной системы зависит от типа сборочной системы, на которой основан проект (CMake, qmake, рекурсивная сборочная подсистема и т.д.). В общем случае требуется редактирование конфигурационных файлов проекта (напр. CMakeLists.txt, <имя_проекта>.pro, common.mk и т.д.).

Параметры Комплекта (например, версии используемых компиляторов, версия компонентов платформы Qt и т.д.) могут быть изменены в свойствах Комплекта (см. раздел "Комплекты" ("Kits") меню "Параметры").


Caution: Поскольку Комплекты, присутствующие в составе Среды разработки, по умолчанию могут быть доступны в режиме "только для чтения", для изменения свойств какого-либо Комплекта рекомендуется предварительно создать его копию (клон) с помощью кнопки "Создать копию" ("Clone"), и осуществлять редактирование свойств именно созданной копии. После создания таким образом нового Комплекта с требуемым набором свойств необходимо в параметрах проекта (меню "Проекты"/"Projects", раздел "Сборка и запуск"/"Build & Run") сделать новый комплект основным или активным.

Вопросы

В случае возникновения вопросов по использованию Среды разработки рекомендуем:
  1. Ознакомиться с разделами Вопросы и ответы и Известные особенности.
  2. Обратиться в службу Технической поддержки ООО "СВД ВС".

    Caution: Техническая поддержка осуществляется только в отношении Qt Creator редакции КПДА (т.е. входящей в состав Комплекта разработчика для ЗОСРВ "Нейтрино").




Предыдущий раздел: Графическая среда разработки Qt Creator (редакция КПДА)