CMake-Variablen-Referenz
Qt-Build-Variablen
Wenn Sie Qt bauen, können Sie CMake-Variablen verwenden, um das Bauergebnis zu kontrollieren.
Variable | Beschreibung |
---|---|
QT_HOST_PATH | Ort der Qt-Host-Installation, von dem aus Host-Tools während eines anderen Qt-Builds, entweder eines regulären oder eines Cross-Compiling-Builds, verwendet werden können. |
QT_FORCE_BUILD_TOOLS | Erzwingt die Erstellung von Tools, auch wenn bereits Host-Tools gefunden wurden. Nützlich bei der Cross-Kompilierung von Qt, um sicherzustellen, dass das SDK über Cross-Built-Tools verfügt. |
QT_FORCE_FIND_TOOLS | Verwendet Qt-Werkzeuge aus dem vorgefertigten Qt in QT_HOST_PATH , wenn Sie nicht crosskompilieren. Die Variable wird nur wirksam, wenn QT_FORCE_BUILD_TOOLS auf ON gesetzt ist. Ansonsten hat QT_FORCE_FIND_TOOLS keinen Einfluss auf das Standardverhalten. |
Modul-Variablen
Qt-Module, die mit find_package
geladen werden, setzen verschiedene Variablen.
Hinweis: Sie müssen nur selten direkt auf diese Variablen zugreifen. Übliche Aufgaben wie das Linken gegen ein Modul sollten über die Bibliotheksziele erfolgen, die jedes Modul definiert.
Zum Beispiel macht find_package(Qt6 COMPONENTS Widgets)
bei Erfolg die folgenden Variablen verfügbar:
Variable | Beschreibung |
---|---|
Qt6Widgets_COMPILE_DEFINITIONS | Eine Liste von Kompilierdefinitionen, die beim Bauen gegen die Bibliothek zu verwenden sind. |
Qt6Widgets_DEFINITIONS | Eine Liste von Definitionen, die bei der Erstellung gegen die Bibliothek verwendet werden sollen. |
Qt6Widgets_EXECUTABLE_COMPILE_FLAGS | Eine Zeichenkette mit Flags, die bei der Erstellung von ausführbaren Dateien gegen die Bibliothek verwendet werden sollen. |
Qt6Widgets_FOUND | Ein boolescher Wert, der beschreibt, ob das Modul erfolgreich gefunden wurde. |
Qt6Widgets_INCLUDE_DIRS | Eine Liste von Include-Verzeichnissen, die bei der Erstellung gegen die Bibliothek verwendet werden sollen. |
Qt6Widgets_LIBRARIES | Der Name des importierten Ziels für das Modul: Qt6::Widgets |
Qt6Widgets_PRIVATE_INCLUDE_DIRS | Eine Liste privater Include-Verzeichnisse, die bei der Erstellung gegen die Bibliothek und bei der Verwendung der privaten Qt-API zu verwenden sind. |
Qt6Widgets_VERSION | Eine Zeichenkette, die die Version des Moduls enthält. |
Für alle Pakete, die mit find_package
gefunden werden, sind Äquivalente dieser Variablen verfügbar; sie unterscheiden zwischen Groß- und Kleinschreibung.
Installationsvariablen
Zusätzlich gibt es auch Variablen, die sich nicht auf ein bestimmtes Paket beziehen, sondern auf die Qt-Installation selbst.
Variable | Beschreibung |
---|---|
| Eine ganze Zahl, die die Qt-Version steuert, zu der die qt_ -Befehle im Falle von gemischten Qt 5- und Qt 6-Projekten weiterleiten. Sie muss entweder auf 5 oder 6 gesetzt werden, bevor die entsprechenden find_package() Aufrufe erfolgen.Wenn sie auf Ist dieser Wert nicht gesetzt, definiert der erste Aufruf von |
QT_LIBINFIX | Eine Zeichenkette, die das in Bibliotheksnamen verwendete Infix enthält, wenn Qt mit -libinfix konfiguriert ist. |
| Blendet Befehle aus, die mit qt_ beginnen, und lässt nur die versionierten Befehle übrig, die mit qt6_ beginnen. |
| Blendet die importierten Ziele aus, die mit Qt:: beginnen. Stattdessen müssen Sie die Ziele verwenden, die mit Qt6:: beginnen. |
QT_VISIBILITY_AVAILABLE | Unter Unix ein Boolescher Wert, der beschreibt, ob Qt-Bibliotheken und Plugins mit -fvisibility=hidden kompiliert wurden. Dies bedeutet, dass nur ausgewählte Symbole exportiert werden. |
Projekt-Variablen
Diese Variablen können CMake-Befehle beeinflussen, die von Qt bereitgestellt werden. Sie können durch das Projekt, eine Toolchain-Datei oder andere Drittanbieter-Pakete gesetzt werden.
Qt6::Core
Android-spezifische Architektur des Host-Systems | |
Standort des Android SDK | |
Liste der ABIs, für die die Projektpakete gebaut werden | |
Liste der Argumente, die an Android-Anwendungen übergeben werden | |
Ermöglicht die Erstellung von Multi-ABI Paketen unter Verwendung der automatisch erkannten Qt für Android SDK Liste | |
Erzwingt oder deaktiviert die Signierung von Release-Paketen unabhängig vom Build-Typ | |
Ermöglicht die Erzeugung von QtQuickViewContent-basierten Klassen | |
Ermöglicht die gemeinsame Nutzung von CMake-Variablen in Multi-ABI-Builds | |
Signiert das .aab-Paket mit dem angegebenen Keystore, Alias und Speicherpasswort | |
Signiert das Paket mit dem angegebenen Keystore, Alias und Speicherpasswort | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von Laufzeit-Binärdateien auf einigen Zielplattformen | |
Verzeichnisse, die von der Suche nach Runtime-Abhängigkeiten ausgeschlossen sind | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von Programmdateien auf einigen Zielplattformen | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von Bibliotheken auf bestimmten Zielplattformen | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von Qt-Plugins auf einigen Zielplattformen | |
Basisverzeichnis für eine Bereitstellung | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von QML-Plugins auf einigen Zielplattformen | |
Name der Datei, die für die Einrichtung der Deployment-Unterstützung eingebunden werden soll | |
Präfix-relatives Unterverzeichnis für die Bereitstellung von Qt-Übersetzungen auf einigen Zielplattformen | |
Aktiviert den ausführlichen Modus der Deployment-Tools | |
Location der Qt-Host-Installation bei Cross-Kompilierung | |
Spezifiziert die Sprache der übersetzbaren Strings | |
Liste der Sprachen, die für die Internationalisierung des Projekts verwendet werden sollen | |
Pfad zum iOS-Startbildschirm-Storyboard, das von allen Zielen verwendet wird | |
Verhindert das Sammeln von im Projekt erstellten gemeinsamen Bibliothekszielen während der Android-Bereitstellung | |
Verhindert das Sammeln von importierten Zielen während der Android-Bereitstellung | |
Deaktiviert die Bereitstellung einer Fallback-App-Bundle-ID während der Zielfinalisierung unter iOS | |
Deaktiviert das Bereitstellen einer Fallback-Team-ID während der Zielfinalisierung unter iOS | |
Verhindert, dass nachfolgende Aufrufe von qt_standard_project_setup() irgendwelche Änderungen vornehmen | |
Satz von Variablen zur Angabe des Pfades zu Qt für Android für die entsprechende ABI | |
Ermöglicht die Verwendung von Android-Build-Verzeichnissen für jedes Ziel |
Qt6::InterfaceFramework
Aktiviert die ausführliche Protokollierung für alle ifcodegen-Funktionen | |
Suchpfad für ifcodegen Templates |
Qt6::Multimedia
Deaktiviert FFmpeg Code-Signierung auf iOS |
Qt6::Qml
Ermöglicht die automatische Generierung von .qmlls.ini Dateien für QML Language Server | |
Deaktiviert die Kompilierung von QML-Dateien in Bytecode oder C++-Code | |
Basis-Ausgabeverzeichnis, unter dem QML-Module standardmäßig erstellt werden |
Standard CMake-Variablen
CMAKE_AUTOGEN_BESSER_GRAPH_MULTI_CONFIG | Verbessert den Abhängigkeitsgraph für Multikonfigurationsgeneratoren |
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.