Im neuen Video geht es darum, wie ich meinen QtCreator eingestellt habe. Vor allem habe ich die Einrückungen im Texteditor eingestellt (Tabs statt Leerzeichen, bestimmte Einrückungen, uvm.).
Ich füge hier einmal die Screenshots der Einstellungen ein:
Natürlich kannst du Qt auf Linux oftmals über deinen Paketmanager installieren. In diesem neuen Video zeige ich dir aber, wie du das Qt-Framework aus den offiziellen Quellen installieren kannst.
Zumindest auf Ubuntu 21.10 benötigt man für die Qt-Entwicklug noch das Paket libgl1-mesa-dev (sudo apt install libgl1-mesa-dev). Dann lädt man sich von https://qt.io das Installationspaket herunter, gibt ihm Rechte zum Ausführen und installiert “Qt for desktop development”. Danach kann man direkt loslegen.
In diesem neuen Video zeige ich dir, wie du das Qt-Framework auf macOS installieren kannst.
Ebenso wie unter Windows, ist die Installation auf macOS sehr leicht, letztlich noch einfacher, denn es gibt eine vorgefertigte Paketauswahl.
Man lädt auf https://qt.io einfach das Installationprogramm herunter, mountet die heruntergeladene DMG-Datei und führt das Installationprogramm von Qt aus. Darin meldet man sich mit seinen Login-Daten an und wählt “Qt for desktop development” aus. Dann gönnt man sich einen Tee. Nach kurzer Zeit ist das Programm installiert.
Es gibt wieder ein neues Video. Hierin zeige ich, wie du Qt inklusive QtCreator auf Windows installieren kannst.
Um mit Qt zu beginnen, musst du das Framework auf deinem Rechner installieren. Das ist recht einfach und du kannst die Schritte, wie ich sie im Video zeige, einfach nach- oder mitmachen.
Die Installation ist super einfach. Auf https://qt.io lädt man das Installationsprogramm herunter und führt es aus. Dann gibt man seine zuvor erstellten Daten ein, wählte die benötigten Pakete, gönnt sich einen Tee und, je nach Internetgeschwindigkeit, ist Qt dann innerhalb kurzer Zeit installiert.
Ich habe ein neues YouTube-Video veröffentlicht. Um Qt aus den aktuellen Quellen zu installieren, benötigt man einen kostenlosen Account. Auf https://qt.io kann man sich den erstellen.
Einen Account zu erstellen, ist sehr einfach. Im Browser der Wahl navigiert man auf https://qt.io. Dort klickt man oben rechts auf das Symbol mit dem kleinen Männchen:
Dort angekommen reicht ein Klick auf “Create Qt Account”. Eine valide E-Mail-Adresse vorausgesetzt, denn es wird eine Verifikationsemail geschickt, muss nur noch zwei mal das Kennwort eingetippt werden, welches man gerne hätte sowie ein Captcha gelöst werden. Dann noch die “service terms” akzeptieren und auf “Create Qt Account” klicken.
Wenige Sekunden später sollte dann eine E-Mail an die angegebene Adresse kommen, in der man den Verifikationslink anklickt. Dann muss man noch ein paar Daten ausfüllen und schon hat man seinen eigenen Account.
Ich habe ein neues Video hochgeladen. In meinem Qt-Tutorial geht es darum, das Framework kennenzulernen und damit zu arbeiten.
In diesem Video gehe darauf ein, was wir mit Qt in diesem Tutorial machen werden.
Nur kurz zusammengefasst: Bei Qt handelt es sich um ein Anwendungsframework und eine GUI-Bibliothek, sprich, man kann einfach Software in C++ (und anderen Programmiersprachen) schreiben, die auch über eine grafische Benutzeroberfläche verfügen.
Qt gibt es für etliche Betriebssystem. Neben Windows, macOS und Linux gibt es auch (teils inoffizielle Builds) für bsplw. Haiku und FreeBSD und andere.
Zusätzlich zur GUI-Bibliothekt gibt es aber auch viele weiter Abstraktionen wie Netzwerk, Multimedia, Datenbanken und vieles mehr.
In diesem Tutorial geht es um folgende Dinge:
Erstellung eines kostenlosen Kontos auf https://qt.io, um die Installation aus den offiziellen Quellen durchzuführen
Installation von Qt auf
Windows
macOS
Linux
GUI-Entwicklung
Netzwerk-Entwicklung (Sockets)
Datenbankanbindung
Alles andere lasse ich in diesem Tutorial aber zuerst aus, sprich, ich gehe weder auf Multimediaentwicklung (Kameraansteuerung, Mikrofon und ähnliches), QML, Entwicklung für mobile Endgeräte und Embedded-Entwicklung ein.
Ich habe es getan, ich habe es wirklich getan. Nachdem manche meinten, ich solle einen YouTube-Kanal aufmachen, und ich immer sagte: “Ich kann sowas nicht, ich kann ja nichtmal vernünftig frei reden.” und mir gesagt wurde: “Jeder hat mal klein angefangen, da wächst du schon hinein.” habe ich für mich beschlossen, ich beginne mal einfach und schaue, was daraus wird.
Ich habe bereits ein paar Videos vorproduziert. Natürlich, wie ich auch erwartet habe, sind sie noch schrecklich. Wenn ich aber nicht anfange und einfach mache, dann kann ich natürlich auch nicht besser werden. Also seid ein wenig nachsichtig (:
Ich werde mit drei, vielleicht vier, Sparten beginnen:
Softwareentwicklung mit Qt
FreeBSD
Kurztipps
und, vielleicht etwas später, macOS-Administration im Netzwerk mit Deployment und vielem mehr
Wir schreiben das Jahr 2005. Mein Arbeitgeber möchte eine neue Software erstellen und wir sind dafür auf der Suche, nach einer nahezu plattformunabhängigen GUI-Bibliothek.
Wir beginnen, mit Qt herumzuspielen und sind begeistert. Bis wir Lizenz und Preise sehen. Schweren Herzenz begaben wir uns auf die weitere Suche und stießen irgendwann, eigentlich recht schnell und ich weiß gar nicht mehr, warum, auf wxWidgets.
Ich spielte einige Stunden, nein Tage und dann auch Wochen, damit herum und war doch sehr angetan, schon alleine, da wxWidgets die GUI-Elemente (in der Regel) nicht selbst zeichnete, so wie es Qt wohl tat (und nicht mehr tut, wenn es nicht sein muss), sondern eine Abstraktion der nativen GUI-Bibliotheken war, die auf den Zielplattformen ohnehin zur Verfügung standen. Auf Windows also MFC, auf Linux/FreeBSD/ähnliche GTK, auf macOS zu der Zeit Carbon, mittlerweile Cocoa, und so weiter und so fort.
Die Programmierung verlangte aber eine höhere Einarbeitung ab, als Qt dies tat und viele Dinge mussten selbst implementiert werden, bsplw. Datenbankabstraktionsschichten mit Persistenzbibliotheken und vieles mehr. All das machte aber Spaß und wenn man es einmal hat – und natürlich auch richtig gemacht hat -, dann kann man es ja wieder verwenden.
So lief es und wir schrieben eine Software nach der anderen. GUI-Software, Systemsoftware, sogar etliche Websites und Backends schrieb ich mit wxWidgets und meinen eigenen Bibliotheken. Ich war schnell, effizient, glücklich.
Doch ich empfand es immer als anstrengend, wxWidgets auf anderen Plattformen als FreeBSD (oder manchmal auch Linux) zu benutzen. Auf FreeBSD reichte sowas wie “c++ *.cpp -o MeinProgramm `wx-config --libs --cppflags`”. Auf anderen Plattformen wie Windows und macOS war es halt kompliziert. Auf Windows mussste (und muss) man noch selbst gegen etliche Bibliotheken linken, auf macOS muss man das Bundling selbst schreiben und Bibliotheken bei der Auslieferung umbiegen. Nervig, ätzend.
Nachdem ich aber für kurze Zeit bei CGM anheuerte und die mit Qt einiges machten, setze ich mich, im Wissen darüber, dass die Lizenz nun liberaler geworden war, noch einmal ausgiebig damit auseinander. Mein Herz ging auf. Ich begann nicht nur, mich mit der Materie mehr zu beschäftigen, ich entwickelte die ersten Projekte darin.
Qt bringt für eltiche Systeme einen Installer mit und Programme und Scripts, die einem das Leben immens vereinfachen.
Es kommt eine komplette IDE, der QtCreator, mit, mit der man seine Programme entwickeln kann. Es wird ein GUI-Designer und vieles mehr mitgeliefert und auch das Deployment auf anderen Plattformen ist integriert und ein Kinderspiel.
Doch das ist nicht alles. Qt ist groß. Es deckt eine Menge ab. Von Netzwerkkommunikation über Datenbankhandling und GUI bis hin zur Entwicklung von Software für Android und iOS. Der (oftmals) selbe Code kompiliert unter allen Plattformen, so dass eine Crossplattformentwicklung relativ einfach (naja, nicht immer) möglich ist.
Aber was sagt die Lizenz? Bei wxWidgets ist es letztlich so: nimm und mach, erwähne uns. Bei Qt muss ich, wenn ich Änderungen am Qt-Code mache, diese auch freigeben. Eigene Software allerdings darf ich ohne Code herausgeben. Klingt das fair? Ja.
Noch eine Sache: Mit QML bringt Qt ein (weiteres) unglaublich mächtiges Werkzeug. Damit lassen sich die grafischen Oberflächen bis ins kleinste designen und anpassen, Abläufe definieren und Layouts für unterschiedliche Dinge entwerfen.
Die große Community hilft bei Problemen und es gibt einige Anwendungssoftware, die mit Qt umgesetzt ist.