Установка QT под Windows и правильные Helloworld'ы :)
QT - ещё один мегаглючный популярный инструмент для разработки на C++. Во всяком случае, если Вы заглянете в тематический раздел Киберфорума, Вы увидите, что вместе с Visual C++ (Studio) и Builder именно Qt образует "большую тройку" современных сред разработки для C++. К тому же, сторонники Qt говорят, что только он изначально соблюдает концепцию ООП и весь из себя кроссплатформенный :) Мдя, ну и бесплатный open source, конечно.
Как нам поставить и настроить это чудо под обычную 32- (64-) разрядную Windows? Смотрим официальный сайт, не ленимся нажать Show downloads.
Онлайн-сборки инсталлятора могут называться вроде
qt-opensource-windows-x86-1.5.0-2-online.exe
Увы, они будут докачивать порядка 800 Мб при установке и, по статистике, чаще становятся криво.
Офлайн-сборки (нажать Show Downloads на странице загрузок) могут называться, например
qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe
Это значит что они - с собственным компилятором MinGW и под 32-разрядную Windows. Есть еще сборки, предназначенные для работы с компилятором Visual Studio, тогда в имени сборки есть "studio". Не советую их, даже если установлен полный Visual Studio.
Скачать, установить. Актуальная версия 5.2.1 включает в себя IDE под названием Qt Creator, ставшее более-менее полноценным, во всяком случае, после пары ухищрений заработала отладка.
Запускаем установщик, по умолчанию будет предложен путь установки C:\Qt\Qt5.2.1
, не стоит его менять. Включаем компоненты Qt, MinGW, Qt Creator, Sources - необязательно.
Возможные проблемы при запуске QT Creator:
1. Ошибки при запуске (отсутствует libstdc++-6.dll и т.п.)
В чём дело: в переменных окружения не определена библиотека Qt и не прописан путь к компилятору. Исправляем ситуацию – создаем в переменных среды переменную QTDIR
, содержащую значение
C:\Qt\Qt5.2.1\5.2.1\mingw48_32
Кроме того, в системную переменную Path
через точку с запятой прописываем пути
C:\Qt\Qt5.2.1\5.2.1\mingw48_32\bin C:\Qt\Qt5.2.1\Tools\mingw48_32\bin
Как это сделать:
Windows XP: Мой компьютер, Свойства, Дополнительно, Переменные среды, Path, Изменить
Windows 7: Мой компьютер, Свойства, Дополнительные параметры системы, Переменные среды, Системные переменные, Path, Изменить
Это необходимо сделать также для того, чтобы собранные Вами приложения могли запускаться из проводника Windows или другого файл-менеджера.
2. Запускается, но присутствуют сообщения об ошибках (например, "Точка входа в процедуру __gxx_personality_v0 не найдена в библиотеке libstdc++-6.dll").
В чём дело: кривые сборки Qt Creator. Собирайте компилятор MinGW вручную (в инете об этом есть) или поставьте QT Creator 3.0.1, основанный на сборке Qt 5.2.1 (файл qt-opensource-windows-x86-mingw48_opengl-5.2.1.exe
), в нём такого бага не наблюдалось.
3. На работает отладка и т.п. Не исключено, что по умолчанию вообще работает только подсветка кода :)
В чём дело: кривизна-с. В меню Инструменты, Параметры, на вкладке Сборка и запуск, Профили Qt проверяем, что имеется автоопределённая связка Qt 5.2.1 + MinGW 32bit, это добавляет Qt Creator. На вкладке Сборка и запуск, Комплекты (в немного более ранних сборках - Инструментарии) должна быть автоопределенная связка инструментов Desktop Qt 5.2.1 MinGW 32bit, эту связку также добавляет Qt Creator, но в ней может быть указан неправильный отладчик, а редактированию она не поддается. У меня помогло просто создание новой связки с помощью кнопки Добавить, ей присваиваем какое-либо другое имя, например, Desktop QT 5.2.1 MinGW Patched, нажимаем кнопку Сделать по умолчанию. В нижней части окна для новой связки необходимо выбрать такие же параметры как и для автоопределенной (Desktop, Локальный ПК (по умолчанию для Desktop), MinGW (x86 32bit) - если желаете, можно и через Visual Studio компилировать, будет ещё медленнее), но указать другой отладчик, воспользовавшись кнопкой Управление, Добавить, Обзор... В открывшемся окне указываем путь к отладчику вида C:\Qt\Qt5.2.1\Tools\mingw48_32\bin\gdb.exe
и нажимаем Применить.
4. Что ещё проверить и настроить перед созданием первого проекта.
Запускаем Qt Creator, выбираем пункт главного меню Инструменты, Параметры... на вкладке Текстовый редактор, Шрифт и цвета устанавливаем понравившийся шрифт (Courier New или другой моноширинный шрифт для листингов - рулит), на вкладке Текстовый редактор, Поведение выбираем кодировку файлов, по умолчанию Юникод (UTF-8). На вкладке Сборка и запуск, Основное указываем папку проектов, например, C:\Qt\Projects
(эту папку надо предварительно создать; в пути к ней, как и к другим папкам Qt
, не должно быть символов кириллицы и/или пробелов; имя пользователя в системе - тоже латиницей).
Теперь два главных действия должно быть легко выполнить:
- меню Отладка, Начать отладку, Начать отладку или клавиша
F5
- меню Сборка, Запустить или комбинация клавиш
Ctrl+R
Можно попробовать. Сначала консольное приложение: меню Файл, Новый файл или проект, Приложения, Консольное приложение Qt. Только встроенный код ничего не делает, а в инете и книгах обычно неработающие "Hello, world". Напишем работающий main.cpp
:)
#include <QtCore/QCoreApplication> #include <iostream> #include <stdio.h> using namespace std; int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); printf("Hello World\n"); return a.exec(); }
Теперь попробуем "приложение с интерфейсом": меню Файл, Новый файл или проект, создать приложение QT Widgets. Текст модуля main.cpp
:
#include "mainwindow.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; QString Title = QString("Hello, world!"); w.setWindowTitle(Title); //или w.setWindowTitle("Hello, world!"); w.show(); return a.exec(); }
Жмём Файл, Закрыть все документы и проекты - и вернёмся к начальному окну, готовые к новым подвигам :)
P.S. Ну и проблема ещё в том, что в инете и книгах большинство примеров - по QT4, а в QT5 есть заметные отличия, самое очевидное -
#include <QtWidgets>
вместо
#include <QtGui>
Подробнее здесь. А вот тут - много примеров с исходниками именно по QT5.
Ниже можно скачать оффлайн-сборку QT 5.2.1 с QT Creator и компилятором MinGW. При полной установке она обеспечивает нормальную работу приложения и не лезет в инет за дополнительными компонентами.
Скачать оффлайн-сборку QT 5.2.1 с QT Creator и компилятором MinGW в файле .exe, 634 Мб
Как слинковать приложение QT статически для работы на другом компьютере? DLL Collector
Как сделать Windows-инсталлятор для приложения на QT? InnoSetup
18.04.2014, 18:38 [69479 просмотров]