Wprowadzenie do środowiska Qt Creator

Transkrypt

Wprowadzenie do środowiska Qt Creator
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
1.Instalacja środowiska Qt Creator
Wprowadzenie do środowiska Qt Creator
Qt Creator jest wygodnym środowiskiem programistycznym przeznaczonym do tworzenia projektów, czyli
aplikacji zarówno konsolowych, jak i okienkowych z wykorzystaniem biblioteki Qt. Przedmiotem zajęć
ZAP I (semestr 1) są wyłącznie aplikacje konsolowe, na zajęciach ZAP II (semestr 2) tworzone będą
również aplikacje okienkowe.
1. Instalacja środowiska Qt Creator
1.1. Pliki instalacyjne
Na zajęciach (zarówno ZAP I, jak i ZAP II) używana będzie wersja Qt 5.0.2 for Windows 32-bit (MinGW 4.7)
wykorzystująca kompilator MinGW 4.7. Plik instalacyjny zajmuje 650MB i jest do pobrania z
http://download.qt-project.org/archive/qt/5.0/5.0.2/qt-windows-opensource-5.0.2-mingw47_32-x86offline.exe
Plik instalacyjny zawiera skompilowaną bibliotekę Qt 5.0.2, środowisko programistyczne Qt Creator
(wersja 2.7.0) oraz odpowiednią wersję MinGW.
Możliwe jest również zainstalowanie wersji wykorzystującej kompilator Microsoft Visual Studio 2010 oraz
wersje na Mac i Linux. Pliki instalacyjne środowiska Qt dla odpowiedniego systemu i kompilatora można
znaleźć pod adresem http://qt-project.org/downloads
1.2. Instalacja
Instalacja wymaga ok 5GB wolnego miejsca na dysku (ok 4GB po zainstalowaniu i ok 1GB na plik
instalacyjny).
Ściągnięty plik qt-windows-opensource-5.0.2-mingw47_32-x86-offline.exe należy uruchomić
w trybie administratora (kliknąć prawym przyciskiem na ikonie pliku i wybrać z menu podręcznego
Uruchom jako administrator). Instalacja odbywa się za pomocą prostego kreatora (wystarczą
ustawienia domyślne). Czas trwania instalacji to kilka minut.
1
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
2.Interfejs
2. Interfejs
2.1. Pierwsze uruchomienie
Wraz ze środowiskiem Qt Creator zintegrowany jest rozbudowany system pomocy z przykładami
i samouczkami (po angielsku). Zapoznanie się ze środowiskiem najlepiej zacząć od kroków widocznych na
ekranie powitalnym. Ekran taki pojawi się przy pierwszym uruchomieniu i zawsze wtedy, gdy wybrana
będzie sekcja Zaczynamy nad górną poziomą kreską.
2
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
2.1.Pierwsze uruchomienie
2.1.1. Sekcje ekranu powitalnego
W widoku ekranu powitalnego dostępne są sekcje:
• Zaczynamy - wprowadzenie dla początkujących
• Sesje i projekty - widok ostatnio otwartych sesji i projektów oraz opcje utworzenia sesji lub projektu
• Przykłady - gotowe projekty z opisem (po angielsku)
• Samouczki - instrukcje krok po kroku (po angielsku)
2.2. Pasek trybu pracy
Oprócz typowego menu górnego dostępny jest boczny pasek wyboru trybu pracy, z którego
poziomu można wybrać widok:
• Powitanie
• Edycja - podstawowy tryb do tworzenia kodu źródłowego programu
• Design - tryb tworzenia interfejsu graficznego (nieużywany na ZAP I)
• Debug - tryb debugowania programu
• Projekty – ustawienia parametrów budowania i uruchamiania otwartych projektów
• Analiza - tryb analizy uruchomionego programu (analiza użycia procesora i pamięci)
• Pomoc
3
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
2.3.Pasek uruchomienia projektu
2.3. Pasek uruchomienia projektu
Poniżej paska wyboru trybu znajduje się pasek uruchomienia i budowania projektu, w którym
zaczynając od góry dostępne są opcje:
• wybór aktywnego projektu
• budowanie i uruchomienie aplikacji
• budowanie i uruchomienie aplikacji w trybie debugowania
• budowanie aplikacji bez uruchamiania
3. Prosta aplikacja konsolowa
3.1. Stworzenie projektu
W trybie widoku powitalnego należy wybrać sekcję Sesje i projekty, a następnie wybrać Utwórz
projekt.
4
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.1.Stworzenie projektu
W oknie tworzenia projektu wybieramy Projekt nieużywający Qt (oznacza to nieużywanie biblioteki Qt,
a tylko samego środowiska Qt Creator) i dalej Zwykły projekt C++.
Następnie należy nadać projektowi nazwę (bez spacji i polskich znaków) i wybrać katalog projektów
(Utwórz w:), w którym utworzony zostanie katalog dla naszego projektu. Proponujemy, aby był to katalog
C:\Users\Student\Documents\ZAP\grupa<numer>_imie_nazwisko\
Uwaga: Nie tylko nazwa projektu, ale i cała ścieżka dostępu do katalogu z projektem, nie mogą zawierać
polskich znaków. W przeciwnym wypadku debugger dostarczony z MinGW może nie działać poprawnie.
Jeżeli chcemy, aby katalog ten był domyślny również dla innych projektów, to zaznaczamy opcję Ustaw
jako domyślne położenie projektów.
5
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.1.Stworzenie projektu
W następnym kroku utworzone zostaną dwa katalogi, osobno dla wersji release i debug. Wersja release
jest to końcowa wersja programu skompilowana z optymalizacją rozmiaru pliku wyjściowego i prędkości
działania, którą dostarczamy użytkownikowi programu. Natomiast program skompilowany w wersji debug
zawiera dodatkowe informacje umożliwiające programiście śledzenie działania programu w celu usunięcia
błędów (tzw. debugowanie). Pozostawiamy tutaj ustawienia domyślne.
Dalej jest już ostatni krok tworzenia projektu: jako podsumowanie na ekranie pojawi się ścieżka do
utworzonego katalogu zawierającego pliki projektu oraz nazwy domyślnie utworzonych plików: pliku
main.cpp z kodem źródłowym oraz pliku z rozszerzeniem .pro zawierającego podstawowe informacje o
projekcie (lista plików źródłowych oraz używanych bibliotek). Utworzony katalog będzie zawierał też plik z
rozszerzeniem .user zawierający ustawienia projektu specyficzne dla konkretnego komputera (m.in.
ścieżki do katalogów). Nas interesować będzie wyłącznie plik main.cpp.
6
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.2.Edycja projektu
3.2. Edycja projektu
Po utworzeniu projektu interfejs zostanie automatycznie przełączony w tryb edycji. W trybie tym dostępne
są dwa najważniejsze okna:
•
Projekty zawierające listę otwartych projektów
•
okno edycji kodu źródłowego.
Dodatkowo mogą pojawić się okna:
•
Otwarte dokumenty z listą otwartych plików,
•
okno komunikatów środowiska.
W oknie edycji kodu źródłowego ukazuje się standardowa zawartość pliku main.cpp z prostym
programem wypisującym na konsoli napis „Hello World!”. Kod ten zastępujemy naszym własnym
programem, wykorzystując gotowy szkielet.
Przykładowo załóżmy, że chcemy napisać program, który poprosi użytkownika o wprowadzenie liczby
całkowitej, a następnie wyświetli ją na konsoli. Zmodyfikowany kod będzie miał postać:
7
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.2.Edycja projektu
#include <iostream>
using namespace std;
int main()
{
int a;
cout << "Podaj liczbe: " << endl;
cin >> a;
cout << "Podana liczba to: " << a << endl;
return 0;
}
3.3. Uruchomienie projektu (aplikacji)
Uruchomienie aktywnego projektu odbywa się za pomocą przycisku z zieloną strzałką
Oznacza to, że projekt budowany jest w wersji debug (co oznacza, że może być potem
uruchomiony w trybie debug), ale uruchamiany jest w „zwykłym” trybie release.
3.4. Komunikaty kompilatora
Pisząc kod łatwo popełnić błąd składniowy lub literówkę, która uniemożliwi poprawną kompilację
programu. W poniższym przykładzie zabrakło średnika na końcu wiersza numer 10, dlatego pojawił się
komunikat expected ';' before 'return'. W języku C++ średnik musi pojawić się po każdej instrukcji,
ale niekoniecznie w tym samym wierszu, dlatego błąd wystąpił dopiero w wierszu 12.
8
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.4.Komunikaty kompilatora
Oprócz błędów, które przerywają kompilację, mogą pojawić się również ostrzeżenia. Dobrze napisany
program powinien kompilować się bez ostrzeżeń. Poniżej pokazane zostało ostrzeżenie o dzieleniu przez
zero w linii numer 10.
3.5. Błędy wykonania programu
W przypadku wystąpienia krytycznego błędu w trakcie działania programu zostaniemy o tym
poinformowani odpowiednim komunikatem. Jeżeli uruchomiliśmy program w zwykłym trybie (nie debug)
to pozostaje nam zamknięcie programu i okna konsoli.
9
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
3.6.Edycja i uruchamianie kilku projektów naraz
3.6. Edycja i uruchamianie kilku projektów naraz
Qt Creator pozwala na pracę z wieloma projektami jednocześnie. W pasku uruchomienia projektu
możemy wybrać aktywny projekt oraz wersję budowania (przycisk z komputerem). Domyślne
projekt budowany jest w wersji debug.
Nazwa aktywnego projektu wyświetlana jest w oknie Projekty pogrubioną czcionką.
W przypadku pracy z wieloma projektami, przycisk uruchomienia projektu (zielona strzałka) uruchomi
projekt aktywny w danej chwili.
4. Debugowanie
4.1. Uruchomienie w trybie debug
Nawet jeżeli kod źródłowy kompiluje się poprawnie i uruchamia bez błędów wykonania, to może zawierać
błąd logiczny, który sprawi, że program nie działa tak jak chcemy. Do wyszukiwania błędów tego typu
służy narzędzie zwane debuggerem, które umożliwia prześledzenie działania programu linia po linii, lub
zatrzymanie w konkretnym miejscu (zaznaczonym jako tzw. breakpoint).
10
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
4.1.Uruchomienie w trybie debug
Punkt zwany breakpoint ustawiamy klikając z lewej strony numeru linii, w której chcemy zatrzymać
wykonanie programu.
Uruchomienie aplikacji w trybie debug odbywa się za pomocą klawisza F5 lub przycisku
Interfejs zostanie automatycznie przełączony w tryb debugowania. Wykonanie programu zostało
zatrzymane w linii z breakpointem (żółta strzałka). W oknie po prawej stronie wypisane są zmienne
dostępne w danej funkcji oraz ich wartości.
11
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
4.1.Uruchomienie w trybie debug
W trakcie debugowania przydatne są przyciski z panelu, który pojawił się w widoku debugowania poniżej
kodu źródłowego.
Zaczynając od lewej strony przyciski to:
• kontynuacja (uruchomienie) debugowania F5
• zatrzymanie debugowania
• przejście do kolejnej linii F10
• wejście do wnętrza funkcji F11
• wyjście z aktualnej funkcji Shift+F11
Przejście do kolejnej linii odbywa się za pomocą klawisza F10. Spróbujmy przejść do linii 9 wciskając
przycisk F10. Po wciśnięciu F10 na linii 9 zawierającej polecenie wczytania danych z konsoli cin » a;
żółta strzałka znika, a program oczekuje na wprowadzenie danych przez użytkownika. Po wprowadzeniu
liczby jej wartość można zaobserwować w oknie podglądu zmiennych.
12
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
4.1.Uruchomienie w trybie debug
Po dwukrotnym kliknięciu pola Wartość przy zmiennej l możemy zmodyfikować wartość tej zmiennej.
Wciśnięcie F5 spowoduje kontynuację wykonania programu aż do napotkania kolejnego breakpointu lub
końca programu. Mimo że w konsoli podaliśmy wartość 5 to wypisana zostanie wartość 7 wprowadzona
w trakcie debugowania.
4.2. Błędy wykonania w trybie debug
Jeżeli program uruchomiliśmy w trybie debug, to komunikat o błędzie jest bardziej szczegółowy,
a miejsce, w którym działanie programu zostało przerwane, wskazane jest za pomocą żółtej strzałki.
13
ZAP I
Wprowadzenie do środowiska Qt Creator
autor: Maciej Przybylski
5.Ustawienie katalogu roboczego
5. Ustawienie katalogu roboczego
Kiedy zaczniemy pracować z plikami, istotne będzie dla nas ustawienie katalogu roboczego programu.
Domyślnie katalogiem roboczym dla uruchomionej aplikacji jest katalog, w którym przechowywane są
pliki tworzone w trakcie kompilacji (patrz str.8), czyli w naszym przypadku jest to:
...\ZAP\grupa<numer>_imie_nazwisko\hello_world-build-Desktop_Qt_5_0_2_MinGW_32bit-Debug
Oznacza to, że jeżeli aplikacja próbuje otworzyć plik bez podania pełnej ścieżki, to plik szukany jest w tym
katalogu. Identycznie, jeżeli aplikacja tworzy jakiś plik wyjściowy bez podania pełnej ścieżki, to plik ten
zostanie umieszczony w tym katalogu.
Z różnych powodów może być dla nas wygodniej uruchomić aplikację w innym katalogu (np. w takim,
w którym przechowujemy jakieś dane wejściowe). Ustawienia katalogu roboczego można zmienić
w widoku Projekty, sekcji Budowanie i uruchamianie, i dalej Uruchamianie.
Warto stworzyć osobny katalog (np. hello_world-run), tak aby pliki wejściowe i wyjściowe nie
znajdowały się razem z kodem źródłowym, ani z plikami generowanymi automatycznie przez środowisko
QtCreator.
14