Kann ich die QT-Library verwenden? /crosscompilen?
Kann ich die QT-Library verwenden? /crosscompilen?
Hallo,
Es ist eine blöde Frage, ich weiss, aber ich bin etwas verunsichert deswegen : Kann ich unter Lazarus/FPC die QT-Bibliothek verwenden und auch z.B. nach aarch64/linux cross-compilen (Raspberry Pi) ?
Wenn ja, wie geht das, was muss ich anstellen, um QT-Elemente einzubinden in Lazarus?
Es ist eine blöde Frage, ich weiss, aber ich bin etwas verunsichert deswegen : Kann ich unter Lazarus/FPC die QT-Bibliothek verwenden und auch z.B. nach aarch64/linux cross-compilen (Raspberry Pi) ?
Wenn ja, wie geht das, was muss ich anstellen, um QT-Elemente einzubinden in Lazarus?
-
- Beiträge: 19
- Registriert: Mo 1. Okt 2007, 21:57
- OS, Lazarus, FPC: Linux: KDE Neon, Sparky - akt. Lazarus stable, FPC 3.0.2
- CPU-Target: 32/64Bit
- Wohnort: Rommerskirchen, NRW
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Auch hallo,
kommt drauf an, was du machen möchtest - wenn du Lazarus mit der LCL-Bindung an QT rekompilierst, kannst du die Standard-LCL Widgets auch unter ARM nutzen, sofern die benötigten Biliotheken auf der Plattform auch installiert / verfügbar sind.
Mal ins blaue gesprochen: du entwickelst auf einem Debian-System unter 32/64-bit mit qtLazarus, dann sollte dein Programm beim cross-compilen bzw. kompilieren auf der Zielhardware auch laufen.
War das die Frage? Oder was möchtest du mit QT machen?
kommt drauf an, was du machen möchtest - wenn du Lazarus mit der LCL-Bindung an QT rekompilierst, kannst du die Standard-LCL Widgets auch unter ARM nutzen, sofern die benötigten Biliotheken auf der Plattform auch installiert / verfügbar sind.
Mal ins blaue gesprochen: du entwickelst auf einem Debian-System unter 32/64-bit mit qtLazarus, dann sollte dein Programm beim cross-compilen bzw. kompilieren auf der Zielhardware auch laufen.
War das die Frage? Oder was möchtest du mit QT machen?
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Hallo,
Es ist eigentlich ganz einfach : Ich habe hier ein QT-Buch im Regal, habe es durchgelesen und mir ist klar, dass das eine super-Library ist.
Die möchte ich gerne nutzen und ein Programm für den Raspi damit erstellen, meine Erstell-Umgebung sei eine Virtuelle Maschine mit Linux Mint 19 Tara.
(ich sags mal primitiv:) Ich habe etwas wenig Doku gefunden, welche "Buttons" mir der Lazarus für mein "Form1"-Forumular dank QT extra zur Verfügung stellen würde und wie die QT-Features genau aussehen. Bzw. was ich überhaupt bei der Lazarus-Installation alles beachten muss, damit mich der Lazarus ein QT-Programm erstellen lässt.
Bisher habe ich den Lazarus/FPC mit Hilfe von FPCUPDeluxe installiert, das hat ganz gut geklappt.
Also: Gibt's zu "QT unter Laz/FPC nutzen" mehr Info irgendwo ? Welche Buttons und Methoden und Klassen mir zur Verfügung gestellt werden und was die alles können ? etc. ?
Es ist eigentlich ganz einfach : Ich habe hier ein QT-Buch im Regal, habe es durchgelesen und mir ist klar, dass das eine super-Library ist.
Die möchte ich gerne nutzen und ein Programm für den Raspi damit erstellen, meine Erstell-Umgebung sei eine Virtuelle Maschine mit Linux Mint 19 Tara.
(ich sags mal primitiv:) Ich habe etwas wenig Doku gefunden, welche "Buttons" mir der Lazarus für mein "Form1"-Forumular dank QT extra zur Verfügung stellen würde und wie die QT-Features genau aussehen. Bzw. was ich überhaupt bei der Lazarus-Installation alles beachten muss, damit mich der Lazarus ein QT-Programm erstellen lässt.
Bisher habe ich den Lazarus/FPC mit Hilfe von FPCUPDeluxe installiert, das hat ganz gut geklappt.
Also: Gibt's zu "QT unter Laz/FPC nutzen" mehr Info irgendwo ? Welche Buttons und Methoden und Klassen mir zur Verfügung gestellt werden und was die alles können ? etc. ?
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Ich weiss nicht genau worauf du hinaus willst.
Der "Witz" an Lazarus ist ja gerade, dass du dich nicht um die Eigenheiten von QT, GTK, Win, Cocoa kümmern musst, sondern diese Widgets via LCL einfach einheitlich benutzen kannst.
Du möchtest dieses System also quasi aushebeln?
https://wiki.lazarus.freepascal.org/Acc ... s_directly
Der "Witz" an Lazarus ist ja gerade, dass du dich nicht um die Eigenheiten von QT, GTK, Win, Cocoa kümmern musst, sondern diese Widgets via LCL einfach einheitlich benutzen kannst.
Du möchtest dieses System also quasi aushebeln?
https://wiki.lazarus.freepascal.org/Acc ... s_directly
-
- Beiträge: 19
- Registriert: Mo 1. Okt 2007, 21:57
- OS, Lazarus, FPC: Linux: KDE Neon, Sparky - akt. Lazarus stable, FPC 3.0.2
- CPU-Target: 32/64Bit
- Wohnort: Rommerskirchen, NRW
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Hallo nochmal, genau darauf wollte ich hinaus - selbst wieder low level auf QT zuzugreifen dürfte ziemlich nervig sein - auch wenn es möglich ist. Ohne fpcupdeluxe gibt es bei Lazarus die Möglichkeit die LCL der IDE von win, gtk -> QT umzustellen. Hier der Link auf das Wiki mit der Anleitung: https://wiki.lazarus.freepascal.org/Qt_ ... rus_0.9.31theo hat geschrieben: Der "Witz" an Lazarus ist ja gerade, dass du dich nicht um die Eigenheiten von QT, GTK, Win, Cocoa kümmern musst, sondern diese Widgets via LCL einfach einheitlich benutzen kannst.
Schau mal in den Einstellungen von FPCupdeluxe, da müsste es was ähnliches geben - vorausgesetzt du hast die erforderlichen qt*-dev-Packages müsstest du Lazarus neu bauen und dann Fenster auf qt-Basis "malen" können.
Probier es mal aus, vielleicht reicht dir der "Standard" ja schon aus.
Gruß,
Boris
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1639
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Eigentlich doch nur die libqt5Pas erstellen und dann das Widgetset Qt5 einstellen.
- kupferstecher
- Beiträge: 431
- Registriert: Do 17. Nov 2016, 11:52
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Crosscompilieren auf ARM-LINUX-QT geht auch von Windows aus (nur der Vollstaendigkeit halber).att2 hat geschrieben:meine Erstell-Umgebung sei eine Virtuelle Maschine mit Linux Mint 19 Tara.
Wie die Andern geschrieben haben, von QT musst du gar nichts wissen dabei. Das Ergebnis sieht auch fast gleich aus wie unter GTK. Lies also lieber ein Lazarus-Buch.
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Hi
Wie hier schon gesagt, aber man muss es nochmal herausheben:
Lazarus läuft auf Windows, Linux, Mac. Auf gtk2,gtk3, qt und und ....
Realität: Ich versuche plattformunabhängig zu proggen unter Linux.
Dann starte ich Windows compilere neu und sehe nach wo es hakt. Das ist aber selten.
Lazarus unter Windows hat automatisch sein Widget Set eingestellt - ich muss mich um nix kümmern.
Das ist recht einzigartig.
Winni
Wie hier schon gesagt, aber man muss es nochmal herausheben:
Lazarus läuft auf Windows, Linux, Mac. Auf gtk2,gtk3, qt und und ....
Realität: Ich versuche plattformunabhängig zu proggen unter Linux.
Dann starte ich Windows compilere neu und sehe nach wo es hakt. Das ist aber selten.
Lazarus unter Windows hat automatisch sein Widget Set eingestellt - ich muss mich um nix kümmern.
Das ist recht einzigartig.
Winni
-
- Beiträge: 1224
- Registriert: So 20. Mär 2016, 22:14
- OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
- CPU-Target: Raspberry Pi 3
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Beachte aber: Unter Linux muss Qt installiert sein - was es meist ist -, unter Windows musst Du die qtxxx.dll mit dem Programm ausliefern.
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Ja, seht ihr, dabei hakt es noch bei mir. Bei mir sieht es so aus: Ich muss den Cross-Compile-Libraries nachrennen und habe keine Ahnung, wie.
Also: Beispiel: Ein primitives Test-Programm besteht nur aus 1 Button und 1 TMemo, wenn der Button geklickt wird, wird der Text "Hello World" an das Memo angehängt.
Ich: Kompiliere: Widget-Set GTK: rennt.
Ich: Cross-Compile nach win32, win64 : geht.
Okay jetzt LCL auf "QT".
Fängt der Ärger an : qt4libpas not found. Ich: apt-get install doch das Zeug (grml, wieso muss ich dem allen hinterher-hecheln?) -> na gut, geht jetzt.
Okay, jetzt LCL auf QT und cross-compile nach AARCH64. Jetzt fängt der Ärger richtig an, Linker regt sich auf, dass er weiss gott was nicht im crosscompile lib dir findet, und ich weiss nicht, wie ich das auf meine Linux-VM mint19 kriege.
Any hints wie ich das Primitiv-Programm nach LCL=QT oder QT5 nach AARCH64 cross-compile ?
Notabene Windows - QT - crosscompile : Spuckt mir eine EXE aus, aber wenn ich die EXE starten will, kommt ein Win-Konsole fenster und "Error c0000007". -> was nun ?
Also: Beispiel: Ein primitives Test-Programm besteht nur aus 1 Button und 1 TMemo, wenn der Button geklickt wird, wird der Text "Hello World" an das Memo angehängt.
Ich: Kompiliere: Widget-Set GTK: rennt.
Ich: Cross-Compile nach win32, win64 : geht.
Okay jetzt LCL auf "QT".
Fängt der Ärger an : qt4libpas not found. Ich: apt-get install doch das Zeug (grml, wieso muss ich dem allen hinterher-hecheln?) -> na gut, geht jetzt.
Okay, jetzt LCL auf QT und cross-compile nach AARCH64. Jetzt fängt der Ärger richtig an, Linker regt sich auf, dass er weiss gott was nicht im crosscompile lib dir findet, und ich weiss nicht, wie ich das auf meine Linux-VM mint19 kriege.
Any hints wie ich das Primitiv-Programm nach LCL=QT oder QT5 nach AARCH64 cross-compile ?
Notabene Windows - QT - crosscompile : Spuckt mir eine EXE aus, aber wenn ich die EXE starten will, kommt ein Win-Konsole fenster und "Error c0000007". -> was nun ?
- af0815
- Lazarusforum e. V.
- Beiträge: 6762
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Kann ich die QT-Library verwenden? /crosscompilen?
Bei Mircosft nachguckenatt2 hat geschrieben:Notabene Windows - QT - crosscompile : Spuckt mir eine EXE aus, aber wenn ich die EXE starten will, kommt ein Win-Konsole fenster und "Error c0000007". -> was nun ?


Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).